-
Posts
23,341 -
Joined
-
Last visited
Content Type
Blogs
Forums
Store
Gallery
Videos
Blog Comments posted by Josh
-
-
1 minute ago, Genebris said:
Don't you need to have your player movement in rendering thread as well then?
No, the camera orientation feeds back from the rendering thread to the main thread.
-
Another update adds horizontal scrolling on text area and tree view widgets, which finishes out all the functionality I wanted. (This is something the scene tree in LE4 never had.)
I also fixed a bug in the SVG loader (I think) that was causing a random crash during loading.
I developed this all on a monitor with 125% scaling before I had the scaling worked out, so I think everything is about 25% too big. I want to go through and compare all the element sizes to the approximate sizes in the win32 interface.
Color scheme system needs to be worked out and finalized.
And I need to make our little project manager app to create new projects and select recent ones.
I'll probably move on to the documentation first, because that will allow people to start using the SDK faster.
- 1
-
Ultra App Kit: Let's Solve the Desktop UI Problem
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
6 hours ago, infixxx said:В 5 версии C# будет, компиляция под Линукс я правильно понял?
*Translate*
In version 5 of C# will be compiled under Linux, I understand correctly?
I plan to, but C# and Linux are not the top priorities initially.
-
Another update has added vertical scrolling on text area and tree view widgets. Drag-and-drop tree view widgets now automatically scroll the panel when you drag near the top or bottom of the widget. Timer problems with some repeat events have also been fixed. Menus and combobox popups have been made a bit darker for better contrast with the window contents.
- 1
-
The variation in color and shininess really makes a big difference.
-
And another update:
- Added STEPPER style sliders.
- Added OK and CANCEL button styles (enter and escape key will activate these unless another widget is focused that uses these keys).
- Added checked menu items.
- Added toolbar buttons.
- Added GROUP style panels.
And with that, all the widget functionality I was planning on is finished.
Still to do:
- Finish scrollbars on some widgets.
- Light color theme.
- Documentation.
-
Another update:
- Example app now demonstrates treeview drag-and-drop behavior.
- Fixed border around listbox and treeview.
- Fixed font scale error.
- Slight improvements in menu appearance and behavior.
- Removed manifest file from VC project.
- SVG pixmap loading is now built-in.
- Removed OpenAL library.
- 1
-
Ultra App Kit: Let's Solve the Desktop UI Problem
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
12 minutes ago, Flyver said:Comparison of simple layout with DOM based VSCode seems to me very odd, besides such performance level can be achieved using canvas (but at what cost?).
Talking about the cost, try to do some complex layout and THAT can be a comparison.We will, but from what I have seen I think it will fly.
-
On 11/20/2020 at 9:36 AM, Lethal Raptor Games said:
I'm interested in getting this to work on a small outdoor scene. Are voxels automatically calculated when we load a model? And does it only work with point lights at the moment?
At the moment, it will only work in one small area around the origin (0,0,0) and only on entities that have had the MakeStatic() method called, and not on terrain.
- 1
- 1
-
-
I like that you are designing it for a specific environment. What are the characteristics of a sci-fi reactor? A nuclear reactor is the closest thing we can base this on.
It's tall and cylindrical. What would the surrounding environment look like? It would probably have lots of pipes and wires, and platforms to reach each vertical level. There would be some kind of cooling system, and maybe a battery system to store electrical energy. Since there is probably a lot of vertical space, you might think about what texture should go on top of your texture above? What should be below it? Can they be mixed and matched to make interesting patterns? Will the floor the rest on have any curved walkways? Are there pipes and supports coming out of the wall?
When the textures guide and suggest the level geometry, that is when the level design magic starts.
-
Ultra App Kit: Let's Solve the Desktop UI Problem
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
There is a Widget::SetAlignment method that can be used to lock an edge to its distance from the parent edge, like in BlitzMax.
-
Ultra App Kit: Let's Solve the Desktop UI Problem
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
We made it, with time to spare! That means this software is going to become a reality by Christmas.
Three stretch goals remain:
- Linux and Mac support
- C# and Lua support
- Visual interface designer
Based on your comments, the Mac / Linux goal is the most popular, but a survey will be taken at the end of the campaign to verify this.
Next Steps
The sky is the limit, but we need to get this out to the right audience. I'm counting on your to spread the word across the internet and reach interested parties. Fortunately, a successful Kickstarter campaign carries some validity. When a crowdfunding campaign first launches, it is spam. Once it is successful, it is a news story. So I think you will find the audience is more receptive when you post about the successful campaign now.
- 1
-
Hopefully it won't be a year!
- 3
-
-
I’m just talking about the basic UI features like buttons, drop down boxes, etc. I have to program all that behavior myself.
CSG will be supported although right now I don’t know all the details of what features it will have.
- 1
-
2 minutes ago, Cromartie said:
Working with CSG like in Source 2?
What?
-
The combobox was actually the hardest item to implement, since it involves a popup window. The menus are basically the same thing as this, and the remaining widgets are just basic logic I have to work out. So it's clear sailing from here.
- 1
-
Not in the initial release, possibly later. The system I am working on is designed to display full-scale real planets. I don’t think voxels can do that without an enormous database bigger than all of Google Earth’s data.
-
6 minutes ago, Mickey said:
Can you make voxel based terrains / planets like in games "Space Engineers" or "7 Days to Die" or "Empyrion - Galactic Survival" ?
It would require another system for voxel terrain. This is meant for displaying GIS data.
-
Small update just added that fixes a bug where the tessellation example would randomly appear wrong.
-
It looks like 1024 is WAY too big for the patch size, because it makes the terrain chunks so large that LOD is impractical. I am switching it to 256. Here is some code that lets you easily change the parameters:
const int terrainsize = 32768; const int patchsize = 64; const std::string heightmapfile = "32768.r16"; auto stream = ReadFile(heightmapfile); auto buffer = CreateStreamBuffer(stream, 0, stream->GetSize()); auto pixmap = CreatePixmap(terrainsize, terrainsize, TEXTURE_R16, buffer); auto dest = CreatePixmap(patchsize, patchsize, TEXTURE_R16); CreateDir("Terrain/32768/LOD0"); for (int x = 0; x < pixmap->size.x / patchsize; ++x) { for (int y = 0; y < pixmap->size.y / patchsize; ++y) { pixmap->CopyRect(x * patchsize, y * patchsize, patchsize, patchsize, dest, 0, 0); dest->Save("Terrain/32768/LOD0/" + String(x) + "_" + String(y) + ".dds"); } } int num = terrainsize / patchsize; int lod = 0; while (num > 0) { CreateDir("Terrain/32768/LOD" + String(lod + 1)); for (int x = 0; x < num / 2; ++x) { for (int y = 0; y < num / 2; ++y) { auto pm00 = LoadPixmap("Terrain/32768/LOD" + String(lod) + "/" + String(x * 2 + 0) + "_" + String(y * 2 + 0) + ".dds"); auto pm10 = LoadPixmap("Terrain/32768/LOD" + String(lod) + "/" + String(x * 2 + 1) + "_" + String(y * 2 + 0) + ".dds"); auto pm01 = LoadPixmap("Terrain/32768/LOD" + String(lod) + "/" + String(x * 2 + 0) + "_" + String(y * 2 + 1) + ".dds"); auto pm11 = LoadPixmap("Terrain/32768/LOD" + String(lod) + "/" + String(x * 2 + 1) + "_" + String(y * 2 + 1) + ".dds"); pm00 = pm00->Resize(patchsize/2, patchsize / 2); pm10 = pm10->Resize(patchsize / 2, patchsize / 2); pm01 = pm01->Resize(patchsize / 2, patchsize / 2); pm11 = pm11->Resize(patchsize / 2, patchsize / 2); pm00->CopyRect(0, 0, patchsize / 2, patchsize / 2, dest, 0, 0); pm10->CopyRect(0, 0, patchsize / 2, patchsize / 2, dest, patchsize / 2, 0); pm01->CopyRect(0, 0, patchsize / 2, patchsize / 2, dest, 0, patchsize / 2); pm11->CopyRect(0, 0, patchsize / 2, patchsize / 2, dest, patchsize / 2, patchsize / 2); dest->Save("Terrain/32768/LOD" + String(lod + 1) + "/" + String(x) + "_" + String(y) + ".dds"); } } num /= 2; lod++; }
- 2
-
The full set is now uploaded here:
https://github.com/Leadwerks/Documentation/tree/master/Assets/Terrain/8192
-
I've got it working better now. There are several factors to take into account when you choose your settings. How reflective is the scene? What resolution do you want the voxels to be? How many cascaded grid are there? How quickly do you want the GI data to update? Faster updates means slower overall performance, but it can be scaled back and forth depending on your usage.
- 3
Ultra Engine Player Input Features
in Development Blog
A blog by Josh in General
Posted
The mouse does not affect movement, except the direction you are looking will. There is going to be acceleration in the player movement anyways, so I don't think this is critical.
It's similar to the way we handle VR head tracking, where the headset orientation is detected in the rendering thread at the last possible moment before rendering a new frame.