Jump to content

Josh

Staff
  • Posts

    24,627
  • Joined

  • Last visited

Everything posted by Josh

  1. Added NavAgent:Stop Added NavMesh() casting function Added the missing CreateNavMesh overload These will be included in the next build that goes up. When an entity is attached to an object, it's local orientation is preserved relative to the parent. This might be a design decision that should be revisited, but it is currently working as intended. I don't think you need to move the agent, the entity's global orientation at the time of attachment will turn into its relative orientation to the attached object.
  2. Problems that don't have a specific way to produce them unfortunately are harder to resolve.
  3. Where did you send this model? I cannot find it in my messages.
  4. This C++ example shows that deletion is working correctly. Are you sure there isn't a reference to the variable somewhere else in your code? #include "UltraEngine.h" using namespace UltraEngine; int main(int argc, const char* argv[]) { //Get the displays auto displays = GetDisplays(); //Create window auto window = CreateWindow("Ultra Engine", 0, 0, 1280, 720, displays[0]); //Create framebuffer auto framebuffer = CreateFramebuffer(window); //Create world auto world = CreateWorld(); //Create main camera auto camera = CreateCamera(world); camera->SetPosition(0, 0, -3); //Create a model auto box = CreateBox(world); //Create a light auto light = CreateBoxLight(world); light->SetRange(-5, 5); light->SetRotation(34, 45, 0); //Load a font auto font = LoadFont("Fonts/arial.ttf"); //Create user interface with a semi-transparent background auto ui = CreateInterface(world, font, framebuffer->size); ui->background->SetColor(0, 0, 0, 0.5); //Create widget iVec2 sz = ui->background->ClientSize(); auto button = CreateButton("Button", sz.x / 2 - 75, sz.y / 2 - 15, 150, 30, ui->background); //Create camera auto orthocamera = CreateCamera(world, PROJECTION_ORTHOGRAPHIC); orthocamera->SetClearMode(CLEAR_DEPTH); orthocamera->SetPosition(float(framebuffer->size.x) * 0.5f, float(framebuffer->size.y) * 0.5f, 0); //UI will only appear in orthographic camera orthocamera->SetRenderLayers(2); ui->SetRenderLayers(2); while (true) { box->Turn(0, 1, 0); while (PeekEvent()) { const Event ev = WaitEvent(); switch (ev.id) { case EVENT_WINDOWCLOSE: if (ev.source == window) { return 0; } break; default: if (ui) ui->ProcessEvent(ev); break; } } if (window->KeyHit(KEY_SPACE)) ui = nullptr; world->Update(); world->Render(framebuffer); } return 0; }
  5. 1. Make sure your shaders are up to date. 2. Change the seed value for the mesh layer, then change it back. This will force re-building of the noise data.
  6. I made a small change that might resolve this. Since this error is difficult to produce I cannot test it.
  7. I am changing it so the editor will ignore the material pick mode.
  8. The pick mode is set to false. It shouldn't be hit-or-miss, it should just be miss, 100% of the time.
  9. Josh

    Viewport Bug

    I'll probably pick it up tomorrow.
  10. Josh

    Viewport Bug

    I found a 570 for sale locally at Best Buy. Will buy it very soon.
  11. Does this resolve your issue?
  12. Josh

    Forest Rocks

  13. Also tried this and it worked correctly: Print(terrain->GetElevation(terrain->resolution.x /2, terrain->resolution.y / 2));
  14. I cannot produce this error in my own testing: #include "UltraEngine.h" using namespace UltraEngine; int main(int argc, const char* argv[]) { auto cl = ParseCommandLine(argc, argv); //Load FreeImage plugin (optional) auto fiplugin = LoadPlugin("Plugins/FITextureLoader"); //Get the displays auto displays = GetDisplays(); //Create a window auto window = CreateWindow("Ultra Engine", 0, 0, 1920, 1080, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR); auto sz = window->ClientSize(); //Create a framebuffer auto framebuffer = CreateFramebuffer(window); //Create a world auto world = CreateWorld(); //Load the map WString mapname = "Maps/test.ultra"; if (cl["map"].is_string()) mapname = std::string(cl["map"]); auto scene = LoadMap(world, mapname); world->RecordStats(true); shared_ptr<Terrain> terrain; for (auto entity : scene->entities) { terrain = entity->As<Terrain>(); if (terrain) break; } Print(terrain->GetElevation(0, 0, 0)); return 0; }
  15. 0.9.6 Mesh layer rotate-to-normal alignment now works correctly with player physics. I had to change the way mesh layer noise data is stored. If you have an existing map and the mesh layers look warped, change the seed value for the mesh layer, then change it back. This will trigger regeneration of the data.
  16. Josh

    Forest Path

    Bloom
  17. Currently, all textures in any materials used in the terrain need to be the texture resolution the terrain has specified upon creation. Normal maps must be in BC5 format. Displacement maps must be in Luminance 8 format. All other textures must be in BC7 format. This is done because the textures get merged together into an atlas, so the texture lookups in the shader are dynamically uniform. I plan to add automatic resizing and format conversion to make this easier.
  18. This is listed in the system requires here, but I did not know the FBX converter also required it. https://www.ultraengine.com/learn The link I have is this: https://aka.ms/vs/17/release/vc_redist.x64.exe I think that includes the required version, but I am not sure. vcredist_x64.zip
  19. Can you upload a map that demonstrates this problem?
×
×
  • Create New...