-
Posts
24,625 -
Joined
-
Last visited
Content Type
Blogs
Forums
Store
Gallery
Videos
Downloads
Everything posted by Josh
-
Okay, I think I see what is happening. The material for the glass has metalness set to 100%, which means it only reflects the environment map or probes. But before the probes are rendered, there is nothing to reflect. Maybe it is a math error or maybe it is reflecting the contents of the cubemaps before anything is rendered, and they just contain random bytes. I will look more closely at the shader code now, but that is basically what is going on, and the quick fix is to set metalness to 99.
-
Yeah, it looks like that object is emitting some very bright colors for some reason. That's the source of all the bright pixels...
-
-
-
-
Hmmm, I am getting a different result when I compile from the library and the source...
-
-
This event ID is only declared in the editor. It doesn't exist as part of the engine. Paste this one-liner into the editor console and open a scene, and it will work: function MyFunc() Print("Hello") end ListenEvent(EVENT_OPENSCENE, nil, MyFunc) Maybe one of your event callbacks is returning false, terminating the chain of callbacks.
-
I do not understand under what circumstances you would want to do this.
-
0.9.8 More bugs fixed. Happy Halloween everyone!
-
Creation Dropdown Window can show up on a diffrent montor.
Josh replied to reepblue's topic in Bug Reports
I fixed the popup previews. I think the object create drop-down window already was fixed silently. -
Creation Dropdown Window can show up on a diffrent montor.
Josh replied to reepblue's topic in Bug Reports
I cannot get this to occur with the object window but I can make it occur with the asset browser preview window. -
Fixed
-
Looks like this only occurs when edge size equals 0...
-
Alpha channel for block colors is not properly rendered in real time
Josh replied to Dreikblack's topic in Bug Reports
Fixed. -
When combined with the next update I will post, this code that adjusts the interface size and camera position will fix the problem. //Main loop while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) { while (PeekEvent()) { const Event ev = WaitEvent(); ui->ProcessEvent(ev); if (ev.id == EVENT_WINDOWSIZE) { ui->SetSize(framebuffer->size); uiCamera->SetPosition((float)framebuffer->GetSize().x * 0.5f, (float)framebuffer->GetSize().y * 0.5f, 0); } } world->Update(); world->Render(framebuffer); }
-
Although the window size stays constant, the client size changes when moving in between displays with two different DPI scales: #include "UltraEngine.h" using namespace UltraEngine; shared_ptr<Window> window; shared_ptr<Framebuffer> framebuffer; shared_ptr<World> world; shared_ptr<Interface> ui; shared_ptr<Camera> uiCamera; shared_ptr<Widget> btn; shared_ptr<Widget> btn2; static bool EventCallback(const Event& e, shared_ptr<Object> extra) { Print("Callback"); return true; } void initGui() { auto default_font = LoadFont("Fonts\\arial.ttf"); ui = CreateInterface(world, default_font, framebuffer->GetSize()); ui->SetRenderLayers(2); ui->root->SetColor(0.2f, 0.1f, 0.1f, 1.0f); uiCamera = CreateCamera(world, PROJECTION_ORTHOGRAPHIC); uiCamera->SetPosition((float)framebuffer->GetSize().x * 0.5f, (float)framebuffer->GetSize().y * 0.5f, 0); uiCamera->SetRenderLayers(2); uiCamera->SetClearMode(CLEAR_DEPTH); btn = CreateButton("Btn", 20, 20, 100, 100, ui->root); btn2 = CreateButton("Btn", 20, 150, 100, 100, ui->root); } int main(int argc, const char* argv[]) { //Get the displays auto displays = GetDisplays(); //Create a window window = CreateWindow("Ultra Engine", 0, 0, 300, 300, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR); //Create a world world = CreateWorld(); //Create a framebuffer framebuffer = CreateFramebuffer(window); //Create a camera auto camera = CreateCamera(world); camera->SetClearColor(0, 0, 0); initGui(); ListenEvent(EVENT_DATA, NULL, EventCallback, btn); auto color = Vec4(0.5, 0, 1, 0.5f); btn->SetColor(color); //Main loop while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) { while (PeekEvent()) { const Event ev = WaitEvent(); ui->ProcessEvent(ev); } world->Update(); world->Render(framebuffer); Print(window->ClientSize().x); } return 0; }
-
-
When the window is made smaller, the toolbar will hide buttons that do not fit into the space. The editor does not change the DPI scale of the program (font and icon sizes) when the display DPI changes, it just uses whatever the display it is created on uses at startup. I do not plan to implement dynamic DPI switching in the editor.
-
Closing due to lack of feedback...