Jump to content

Josh

Staff
  • Posts

    24,629
  • Joined

  • Last visited

Everything posted by Josh

  1. The black screen is being caused by one of the post-processing effects, so probably some syncing thing when a new texture buffer is created. It's definitely a Vulkan problem.
  2. Ultra supports this in the enterprise build. One thing I found is that supporting double floats by itself is not that useful. The next thing people want is some streaming terrain and planet system to populate the world with. But that itself isn't that useful, because no one actually has any data for such a system, so the next thing they need is some kind of geospatial mapping system that fetches real world terrain data. So I consider all of those things to go together and be required before this will see release.
  3. Based on your video, I think the problem is that you are expecting it to pick the closest object. There is an optional value you should set to get this behavior. Otherwise, it just acts as a line-of-sight test and returns if any object is hit. Picking does not work on animated models because the vertices only move around on the GPU. In my AI scripts I handled this by using the box pick mode on all children of the model, then disabling picking on the model itself: self.entity:SetPickMode(Entity.BoxPick,true) self.entity:SetPickMode(0,false) This provides a close but efficient way to intersect an animated model with bullets and things.
  4. I think the overdraw problem was caused by my use of WS_EX_TRANSPARENT in every created window. I still have a problem with the 3D viewport rendering black, but I think this fixes the background overdraw problem.
  5. It seems the problem is that WS_CLIPCHILDREN is being ignored.
  6. ExcludeClipRect is what is needed I think...
  7. I think the issue is that my own window paint code is not considering the complex region I assume the event somehow provides, but is only considering the rectangle of the paint event. There must be a structure I need to pass that includes the excluded child window areas.
  8. There are two problems. The gray overdraws are caused because when the WS_CHILD window style is used, any paint events on the parent window overdraw the child window. I was using a bordered panel underneath the viewport window, and changing the panel border color triggers a paint event that covers the whole area of the viewport. This is why switching the active viewport would paint the previous viewport gray. I solved this by using four 1-pixel thick panels to make the border around viewports. These can have their color changed and it does not cause a paint event that covers the viewport window. The second issue is it seems 3D perspective viewports occasionally render a black screen. I am still investigating this. A fix is uploaded now for the first part.
  9. Fixed GUI scaling problems in checkbox buttons, sliders, and property grid group headers. Fixed scaling bug in face and terrain panels Fixed scale factor being ignored in split panel orientation switching Eliminated a lot of extra paint events, might feel snappier now
  10. It looks like some weird paint event is invalidating the Vulkan window...
  11. Finalizing the location of program icon files. Disappearing viewport issue might be slightly better than the latest aggregation.
  12. It appears that my GUI system is painting on top of the viewport window when it draws to the underlying window. Not sure how that is possible, but it should be solvable.
  13. Yep, it will be documented here: https://www.ultraengine.com/learn/EditorScripting?lang=lua
  14. Posting this mostly for myself later... OBJS = Source/UltraEngineHub.o Source/Libraries/PluginSDK/GMFSDK.o Source/Libraries/PluginSDK/MemReader.o Source/Libraries/PluginSDK/MemWriter.o Source/Libraries/PluginSDK/TextureInfo.o Source/Libraries/PluginSDK/Utilities.o Source/Libraries/PluginSDK/half/half.o Source/Libraries/s3tc-dxt-decompressionr/s3tc.o Source/Libraries/stb_dxt/stb_dxt.o Source/Classes/Object.o Source/Classes/Math/Math_.o Source/Classes/Math/Vec2.o Source/Classes/Math/Vec3.o Source/Classes/Math/Vec4.o Source/Classes/Math/iVec2.o Source/Classes/Math/iVec3.o Source/Classes/Math/iVec4.o Source/Classes/String.o Source/Classes/WString.o Source/Classes/Display.o Source/Classes/IDSystem.o Source/Classes/JSON.o Source/Functions.o Source/Classes/GUI/Event.o Source/Classes/GUI/EventQueue.o Source/Classes/Language.o Source/Classes/FileSystem/Stream.o Source/Classes/FileSystem/BufferStream.o Source/Classes/FileSystem/FileSystemWatcher.o Source/Classes/GameEngine.o Source/Classes/Clock.o Source/Classes/Buffer.o Source/Classes/GUI/Interface.o Source/Classes/GUI/Widget.o Source/Classes/GUI/Panel.o Source/Classes/GUI/Slider.o Source/Classes/GUI/Label.o Source/Classes/GUI/Button.o Source/Classes/GUI/TextField.o Source/Classes/GUI/TreeView.o Source/Classes/GUI/TextArea.o Source/Classes/GUI/Tabber.o Source/Classes/GUI/ListBox.o Source/Classes/GUI/ProgressBar.o Source/Classes/GUI/ComboBox.o Source/Classes/GUI/Menu.o Source/Classes/Window/XWindow.o Source/Classes/Timer.o Source/Classes/Process.o Source/Classes/FileSystem/StreamBuffer.o Source/Classes/Multithreading/Condition.o Source/Classes/Multithreading/Thread.o Source/Classes/Multithreading/Mutex.o Source/Classes/Loaders/Loader.o Source/Classes/Loaders/DDSTextureLoader.o Source/Classes/Assets/Asset.o Source/Classes/Plugin.o Source/Classes/Assets/Font.o Source/Classes/FileSystem/Package.o Source/Classes/Graphics/Pixmap.o Source/Classes/Graphics/Icon.o Source/InvisionPower.o LIBOBJS = Source/Libraries/PluginSDK/GMFSDK.o Source/Libraries/PluginSDK/MemReader.o Source/Libraries/PluginSDK/MemWriter.o Source/Libraries/PluginSDK/TextureInfo.o Source/Libraries/PluginSDK/Utilities.o Source/Libraries/PluginSDK/half/half.o Source/Libraries/s3tc-dxt-decompressionr/s3tc.o Source/Libraries/stb_dxt/stb_dxt.o Source/Classes/Object.o Source/Classes/Math/Math_.o Source/Classes/Math/Vec2.o Source/Classes/Math/Vec3.o Source/Classes/Math/Vec4.o Source/Classes/Math/iVec2.o Source/Classes/Math/iVec3.o Source/Classes/Math/iVec4.o Source/Classes/String.o Source/Classes/WString.o Source/Classes/Display.o Source/Classes/IDSystem.o Source/Classes/JSON.o Source/Functions.o Source/Classes/GUI/Event.o Source/Classes/GUI/EventQueue.o Source/Classes/Language.o Source/Classes/FileSystem/Stream.o Source/Classes/FileSystem/BufferStream.o Source/Classes/FileSystem/FileSystemWatcher.o Source/Classes/GameEngine.o Source/Classes/Clock.o Source/Classes/Buffer.o Source/Classes/GUI/Interface.o Source/Classes/GUI/Widget.o Source/Classes/GUI/Panel.o Source/Classes/GUI/Slider.o Source/Classes/GUI/Label.o Source/Classes/GUI/Button.o Source/Classes/GUI/TextField.o Source/Classes/GUI/TreeView.o Source/Classes/GUI/TextArea.o Source/Classes/GUI/Tabber.o Source/Classes/GUI/ListBox.o Source/Classes/GUI/ProgressBar.o Source/Classes/GUI/ComboBox.o Source/Classes/GUI/Menu.o Source/Classes/Window/XWindow.o Source/Classes/Timer.o Source/Classes/Process.o Source/Classes/FileSystem/StreamBuffer.o Source/Classes/Multithreading/Thread.o Source/Classes/Multithreading/Mutex.o Source/Classes/Multithreading/Condition.o Source/Classes/Loaders/Loader.o Source/Classes/Loaders/DDSTextureLoader.o Source/Classes/Assets/Asset.o Source/Classes/Plugin.o Source/Classes/Assets/Font.o Source/Classes/FileSystem/Package.o Source/Classes/Graphics/Pixmap.o Source/Classes/Graphics/Icon.o OBJS2DKIT = $(OBJS) Source/Classes/Graphics/Framebuffer.o CC = g++ FLAGS = -w -c -Wall -I/usr/include/freetype2 -I/usr/include/fontconfig -ISource/ -D_ULTRA_APPKIT # Build executable LFLAGS = -no-pie -lX11 -lpthread -lXft -lXext -lXrender -lXcursor -ldl -lsteam_api -lcurl OUT = AppKit # Build library #LIBFLAGS = -w -Wall -lX11 -lpthread -lXft -lXext -lXrender -lXcursor -ldl -Wall -I/usr/include/freetype2 -I/usr/include/fontconfig -ISource/ -D_ULTRA_APPKIT LIBFLAGS = -w -Wall -I/usr/include/freetype2 -I/usr/include/fontconfig -ISource/ -D_ULTRA_APPKIT LIBOUT = AppKit.o AppKitLib: $(LIBOBJS) ld -relocatable $(LIBOBJS) -o Library/Linux/$(CONFIGNAME)/AppKit.o %.o: %.cpp $(CC) -c $(LIBFLAGS) $(CONFIGFLAGS) $< -o $@ AppKit: $(OBJS) $(CC) $(CONFIGFLAGS) $(OBJS) -o $(OUT) $(LFLAGS) %.o: %.cpp $(CC) $(FLAGS) $(CONFIGFLAGS) $< -o $@ 2DKit: $(OBJS) $(CC) $(CONFIGFLAGS) $(OBJS) $(OBJS2DKIT) -o $(OUT) $(LFLAGS) -D_ULTRA_2DKIT %.o: %.cpp $(CC) $(FLAGS) $(CONFIGFLAGS) $< -o $@ 2DKitLib: $(LIBOBJS) ld -relocatable $(LIBOBJS) $(OBJS2DKIT) -o Library/Linux/$(CONFIGNAME)/AppKit.o -D_ULTRA_2DKIT %.o: %.cpp $(CC) -c $(LIBFLAGS) $(CONFIGFLAGS) $< -o $@ clean: rm -f $(OBJS) $(OUT) Library/Linux/$(CONFIGNAME)/AppKit.o
  15. I'm seeing something similar on Win 10 with a GEForce 1080.
  16. I found a 6600 at Best Buy, and those are probably pretty close to the 6800 so I can get that and test it later this week.
  17. The example you posted works without incident.
  18. Entity components' load method will now get called in Map::Reload().
  19. It should be called. I will check it out.
  20. Oh, okay, I can tell what is happening just by looking at the behavior. Ultra uses a technique called "clustered forward rendering". It appears the spotlight settings might not be considered correctly to tell which lights appear in which cells.
  21. Preprocessor is gone, by the way. The antivirus might be activated by UPX, which I used to compress some executables.
  22. What should I look for in that image?
  23. Remove all and add the ones you want back in.
×
×
  • Create New...