Jump to content

Josh

Staff
  • Posts

    23,062
  • Joined

  • Last visited

Everything posted by Josh

  1. See Camera::SetClipPlane and CameraClipPlane0 in CameraInfo.glsl.
  2. It may be possible to improve this in the future but I am wary of trying to mask this behavior, since it might lead to other problems. For now I am going to consider this "not a bug".
  3. From MS: https://learn.microsoft.com/en-us/dotnet/api/system.io.filesystemwatcher.created?view=net-8.0
  4. Editing a .fam file in VS Code, I do see two FILE_CHANGED events being emitted by the file system watcher.
  5. Just installed Notepad++ and had no problems with multiple reloads when saving a post-processing fragment shader file. Let's see what happens when the next build of the editor goes up.
  6. I added a weak pointer in the shader module (the asset) to all shaders they get attached to, and it will reattach them and update the shader automatically when the module is reloaded. Tested shader editing in VSCode and Notepad and with both those programs the asset only gets reloaded once...
  7. Added selection toolbar item Added basic implementation of drag-select area. The volume intersection test is not exact yet. Revised the way converters work to make them more useful. I recommend deleting the FBXToglTF and ColladaToglTF scripts in Scripts/Start/Converters, if you have those files. Converters can now be enabled and disabled with settings. Everything is managed entirely in script, except for detecting files that need to be converted and emitting the convert file event.
  8. It says that you left the conversation! I sent a new PM.
  9. https://www.ultraengine.com/community/messenger/1685224954/
  10. I think the type needs to be an exact match. We should determine what a bindless handle looks like on the CPU side.
  11. Quite a lot of Steamworks is exposed already: https://www.ultraengine.com/learn/Steamworks?lang=cpp There is also support for XBox controllers here: https://www.ultraengine.com/learn/GamePad?lang=cpp I have not used Steam input myself. I did some work with their early Steam controller API, but I think that got deprecated.
  12. I just updated the editor with the recent fixes.
  13. When I modify the shadow casting setting of a model in the asset window, the view updates instantly in the main window viewports, before I even save the model.
  14. I think this is the same thing:
  15. Directional lights will now use the camera for the LOD distance.
  16. It works now. I believe this is fixed. I don't understand what is supposed to happen in the code you posted, so please let me know if anything is not right.
  17. Fixed Camera::SetUniform integer variables. Added Camera::SetUniform Mat3 and Mat4 overloads. Camera::SetUniform texture will work with either a GLSL uvec2 or a uint64.
  18. Wouldn't it have to be cast to a uvec2? The first four bytes could form a zero and the second four bytes could be another value, and an uint would not detect that.
  19. I will do this so it will choose the type based on what is in the shader, and you can use either. It also stores a shared pointer to the texture so it can't get deleted as long as it is bound to the shader: void RenderShader::SetUniform(const int location, std::shared_ptr<RenderTexture> tex) { if (not Finalize()) return; if (location < 0 or location >= uniforms.size()) return; auto& u = uniforms[location]; if (u.defined and u.resource == tex) return; if (u.size != 1) return; GLuint64 handle = 0; switch (u.type) { case GL_UNSIGNED_INT64_ARB: if (tex) handle = tex->GetHandle(); glProgramUniformHandleui64ARB(program, u.location, handle); break; case GL_UNSIGNED_INT_VEC2: if (tex) handle = tex->GetHandle(); glProgramUniform2uiv(program, u.location, 1, (GLuint*)handle); break; default: return; break; } glCheckError(); u.defined = true; u.resource = nullptr; if (handle) u.resource = tex; }
  20. The only downside is you can no longer check if the value is 0 to disable the texture.
×
×
  • Create New...