Jump to content

Josh

Staff
  • Posts

    24,629
  • Joined

  • Last visited

Everything posted by Josh

  1. Confirmed... You guys keep saying "component" when I think you mean "entity".
  2. Only top-level entities are returned, so the bounds used is the recursive bounds that includes all children. This code shows it is working correctly: #include "UltraEngine.h" using namespace UltraEngine; int main(int argc, const char* argv[]) { auto displays = GetDisplays(); auto window = CreateWindow("Ultra Engine", 0, 0, 1280, 720, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR); auto world = CreateWorld(); auto framebuffer = CreateFramebuffer(window); auto camera = CreateCamera(world); camera->SetClearColor(0.125); camera->SetPosition(0, 0, -3); auto light = CreateBoxLight(world); light->SetRotation(45, 35, 0); light->SetRange(-10, 10); light->SetColor(2); auto prefab = LoadPrefab(world, "WallLight3.pfb"); auto bounds = prefab->GetBounds(BOUNDS_RECURSIVE); Vec3 realPosition(10, 0, 10); float radius = 0.8f; Vec3 positionLower = realPosition; positionLower.x = positionLower.x - radius; positionLower.z = positionLower.z - radius; positionLower.y = positionLower.y - radius; Vec3 positionUpper = realPosition; positionUpper.x = positionUpper.x + radius; positionUpper.z = positionUpper.z + radius; positionUpper.y = positionUpper.y + radius; auto bounds2 = Aabb(positionLower, positionUpper); Print(bounds2.IntersectsAabb(bounds)); return 0; for (auto& foundEntity : world->GetEntitiesInArea(positionLower, positionUpper)) { Print(foundEntity->name + " found"); } //Main loop while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) { world->Update(); world->Render(framebuffer); } return 0; }
  3. I followed your exact steps, but I am unable to produce the error. testPrefab.zip
  4. Created a thread here:
  5. @The 4th Doctor I will dedicate some time during Saturday's meeting to discuss the possibility of 3D World Studio 6. Anyone who is interested in this idea should join the meeting on Discord at 10 AM PST: https://discord.gg/qTVR55BgGt
  6. Is there a semi standard text file that gets exported with heightmaps?
  7. Tested in Lua, to be sure. There must be another reference to the variable in question somewhere. -- Get the displays local displays = GetDisplays() -- Create window local window = CreateWindow("Ultra Engine", 0, 0, 1280, 720, displays[1]) -- Create framebuffer local framebuffer = CreateFramebuffer(window) -- Create world local world = CreateWorld() -- Create main camera local camera = CreateCamera(world) camera:SetPosition(0, 0, -3) -- Create a model local box = CreateBox(world) -- Create a light local light = CreateBoxLight(world) light:SetRange(-5, 5) light:SetRotation(34, 45, 0) -- Load a font local font = LoadFont("Fonts/arial.ttf") -- Create user interface with a semi-transparent background local ui = CreateInterface(world, font, framebuffer.size) ui.background:SetColor(0, 0, 0, 0.5) -- Create widget local sz = ui.background:ClientSize() local button = CreateButton("Button", sz.x / 2 - 75, sz.y / 2 - 15, 150, 30, ui.background) -- Create orthographic camera local orthocamera = CreateCamera(world, PROJECTION_ORTHOGRAPHIC) orthocamera:SetClearMode(CLEAR_DEPTH) orthocamera:SetPosition(framebuffer.size.x * 0.5, framebuffer.size.y * 0.5, 0) -- UI will only appear in orthographic camera orthocamera:SetRenderLayers(2) ui:SetRenderLayers(2) while true do box:Turn(0, 1, 0) while PeekEvent() do local ev = WaitEvent() if ev.id == EVENT_WINDOWCLOSE then if ev.source == window then return 0 end else if ui then ui:ProcessEvent(ev) end end end if window:KeyHit(KEY_SPACE) then ui = nil button = nil collectgarbage() end world:Update() world:Render(framebuffer) end However, I did find that sprites are not getting hidden if the widget is assigned NULL as a parent...
  8. It would be best to get in touch with the developers of SCP: Containment Breach, which used 3D World Studio. They could help me reach a lot of people.
  9. AMD has responded here: https://github.com/GPUOpen-Drivers/AMD-Gfx-Drivers/issues/27#issuecomment-2443034119
  10. Josh

    Mobile Site

    Added sign in / out links in the drop-down menu when the mobile display is shown.
  11. 0.9.8 Bug fix update. Unsolved bug reports have gone down from 6 pages to 4 this week so far (with 42 pages of solved reports).
  12. The easy way to test demand is a Kickstarter campaign. If it is successful, cool. If it it not successful, also cool that I don't waste time making something no one wants. Either outcome is good. You can tell the people I am thinking about doing this.
  13. Maybe it is time for 3D World Studio 6?
  14. Fixed! Thank you for reporting this, it was rather important.
  15. I think this is fixed? I remember seeing this in the past, but I am trying to produce the error now and can't make it occur.
  16. I am not sure what the right solution here is. In Ultra I used 16-bit half floats for the terrain heightmap pixel format. Raw image files are usually stored in 16-bit unsigned integers, 32-bit unsigned integers, or 32-bit floats. For the unsigned integer formats, I have to know the desired vertical scale of the loaded terrain, and that information is not included in the raw heightmap.
  17. I verified on the Lua end this is working correctly.
  18. I created a simple test to verify this is working as expected: probetest.zip
  19. I think this thread is a repeat of this bug, which was solved. Please let me know if you still have any problem.
  20. This system was changed to use bindless textures instead of array textures, so the requirements I listed above no longer apply. I believe this solves your issue, but if you have any other problems please create a new thread. Thanks!
  21. When this prefab is loaded, an error message appears that says "Nested prefabs are not supported." So I think this is fixed.
  22. Is it possible to upload a simple scene that shows the problem? I tried to recreate this situation but everything worked as I expected it to. See attached. rotationtest.zip
  23. Fixed. I added back in the top-level scene node for this reason. I am assuming this is working correctly now, because I could not produce any error in my tests. If it is not already solved, please upload a scene file that shows the problem.
×
×
  • Create New...