-
Posts
22,895 -
Joined
-
Last visited
Content Type
Blogs
Forums
Store
Gallery
Videos
Blog Comments posted by Josh
-
-
Working flowgraph is available on /dev channel now.
- 1
- 1
-
Starting on the flowgraph implementation. I'm going to try to have this done by Monday. This is rendered in GDI+.
Zoom also works, without much effort:
I'm designing it as a custom widget I will post the source to, so it can be reused for other purposes if desired.
I didn't mention it but segmented line widget blocks exist in Ultra now.
- 6
- 1
-
The versioning is just an arbitrary number. Maybe you are right that making the final non-EA release "1.0" makes more sense. I don't have any strong opinion on this.
This is the first release of the visual editor. This allows you to set up a scene, add components to objects, and adjust properties, which makes development much easier. The programming SDK may have been premature, but no harm done. The editor is very nearly complete, with a lot of features that Leadwerks lacks, so it makes sense to get it in peoples' hands as early as possible so they can start learning the new workflow.
I would estimate most of this stuff will be done by the end of the year, but like any engineer I like to add extra padding to my estimates. The AMD issues will likely be the slowest step. If there is indeed a driver bug it will probably take a couple months before the next driver comes out. It might actually make sense to prioritize the flowgraph editor, since it has the most "downstream" effects on the workflow, whereas with something like decals there's no big questions about how they should work..
Although no definite plans for Leadwerks have been announced, I have some things I would like to do with it. I don't know how much time I will have for it, but I do know my workload has gotten much much easier as of late. All the really difficult work is done and none of my remaining tasks are super difficult, so it is possible I may have some time for this in the near future.
I understand you have put a significant amount of effort into building games on Leadwerks. Although Ultra can load Leadwerks assets, there are breaking API changes and the concepts don't always translate across with 100% accuracy. For example, Ultra supports multiple components per entity and Leadwerks just supports one. In order to overcome some of the limitations of the older system, breaking changes were necessary.
However, Ultra offers an extreme performance advantage that in my view justifies all the difficulty of developing or learning a new engine. The engine scales extremely well as you add more and more content to your game. Rather than trying to make the easiest to learn engine, I am trying to make the one that is most worth learning. It took a huge amount of work to develop this system, and Vulkan made it even more difficult, but I think the payoff is worthwhile and the people who have had the most experience with Ultra so far seem to agree with me that this was the right approach.
-
8 minutes ago, ERKGames said:
Can you please answer me:
1. Am I correct in understanding that you are planning to release a version called 1.0, which will have a minimally functioning engine, but modules for developing flowgraph scenes and particle emitters will be unavailable?
2. Will 1.0 also be released on Steam, or will it be an exclusive release for the website?1.0 is considered "Early Access" and does not include the following:
- Flowgraph editor
- Decals
- Particle emitters
- Brush smooth groups
- Other various editor enhancements
Additionally, AMD GPUs will display visual artifacts in the current build.
Releasing now as "Early Access" is good because there is a ton of new things for people to learn, and I want additional user feedback on the design of some of the remaining items. People can only make good suggestions if they understand how the core engine works.
Version 1.1 will be a free update to finish out these items, and at that point the software will no longer be considered "Early Access". I think March 2024 is a comfortable deadline to finalize that, with updates along the way on the dev branch.
The standalone version of the software will first be available on the website here, followed by a release on Steam in early November.
-
11 hours ago, Dreikblack said:
So it will be NVIDIA RTX that games using nowadays?
Vulkan raytracing extension, works with all vendors:
https://www.khronos.org/blog/ray-tracing-in-vulkan- 1
-
Hi, I am from the future and I have your new game engine:
- 1
-
6 minutes ago, DoomSlayer said:
Are you planning to bring back the water system?
Also, If I preorder I get access to Ultra right way or I have to wait for the official release on steam?
1. In Ultra, every surface is reflective, so there is actually no need for a special water surface (AAA games nowadays are taking the same approach, see Phantom Liberty). Water consists of two things:
- An animated or scrolling texture
- Some kind of buoyancy physics volume
I do not have the second part set up yet, but plan to do so. Also, we can probably do something interesting with the player physics to allow swimming.
2. The standalone version will be available before the Steam build is.
- 1
-
Updated code for generating cubemap:
#include "UltraEngine.h" using namespace UltraEngine; // https://www.ultraengine.com/community/blogs/entry/2780-building-a-single-file-4k-hdr-skybox-with-bc6-compression/ int main(int argc, const char* argv[]) { //Settings const bool compression = true; // Load required plugin auto fiplugin = LoadPlugin("Plugins/FITextureLoader"); auto cplugin = LoadPlugin("Plugins/ISPCTexComp"); // Load cube faces output from https://matheowis.github.io/HDRI-to-CubeMap/ std::vector<std::shared_ptr<Pixmap> > mipchain; WString files[6] = { "px.hdr", "nx.hdr", "py.hdr", "ny.hdr", "pz.hdr", "nz.hdr" }; for (int n = 0; n < 6; ++n) { auto pixmap = LoadPixmap(files[n]); Assert(pixmap); if (pixmap->format != VK_FORMAT_R16G16B16A16_SFLOAT) { pixmap = pixmap->Convert(TextureFormat(VK_FORMAT_R16G16B16A16_SFLOAT));// this step is required for BC6H conversion } while (true) { auto mipmap = pixmap; if (compression) mipmap = mipmap->Convert(TEXTURE_BC6H); Assert(mipmap); mipchain.push_back(mipmap); auto size = pixmap->size; if (size.x == mipmap->blocksize and size.y == mipmap->blocksize) break; size /= 2; pixmap = pixmap->Resize(size.x, size.y); Assert(pixmap); } } // Save cubemap SaveTexture("skybox.dds", TEXTURE_CUBE, mipchain, 6); return 0; }
-
Creating Realistic Skyboxes with Vue
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
34 minutes ago, WazMeister said:Oh blimey that new one looks fat more complex and difficult.. Though amazing. Does it relate to Leadwerks or Ultra though? Seeing alot content for Ultra which confuses me if it's leadwerks or not.
It's for Ultra.
-
Creating Realistic Skyboxes with Vue
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
1 hour ago, WazMeister said:Amazing. Will save this and follow for my own game! Thanks for taking time and effort to share such knowledge.
This is probably a better approach now:
https://www.ultraengine.com/community/blogs/entry/2780-building-a-single-file-4k-hdr-skybox-with-bc6-compression/ -
camera->SetDebugPhysicsMode(true);
- 1
- 1
-
Okay, there's an update on 1.0.3 now. Let me know what you think.
-
Well, yeah, you can do pretty much anything as an extension.
So you are saying that if I was to choose one way to do this, you are usually loading mesh colliders (static), not convex hulls?
-
There is a "browse" option in the collider drop-down, but you raise a good point. The current design follows how mesh materials and material textures work. With those items, there are multiple files that might be applied to one asset in one window. However, with colliders there is only one collider per model. So that might be a justification why a menu item for the window is the better option.
I'm dragging my feet on your request to load colliders directly from models because:
- Colliders loaded from models could be a Newton tree collision (mesh) or convex hull(s).
- Convex hulls have a tolerance value to control exactly how precise/detailed the hull is.
- Collision trees have an optimize parameter to control whether adjacent faces get merged.
These options are all available in the current interface. In order to support them in a model loading step, I would need to duplicate all this functionality in a new interface. It is strange to implement the same feature twice.
-
You can open an OBJ file in the asset editor and create a convex hull from that, then save it to the file you want.
-
Quake MDL and BSP files are now supported as well.
-
I don't see any such option. It says "Advanced options are unavailable right now".
-
Someone should integrate inpainting to make textures seamless:
-
5 hours ago, Mr. Fox said:
Great job! Josh i still have my Leadwerks t-shirt here. Now i come back and have a great idea what i want to archive with your engine!
btw under purchases the old leadwerks 2 is gone?!
best regardsHi! Leadwerks 2 was a long time ago, before this system was even in place. All purchases of more recent versions of Leadwerks were sold through Steam.
-
I also came across this tiling texture generator, but OpenAI was easier to implement:
https://replicate.com/tommoore515/material_stable_diffusion -
- 1
-
18 hours ago, chsch said:
tiling is a feature of SD, though and has been a mere checkbox away for a while.
Where? I don't see this anywhere on their site:
https://stablediffusionweb.com/#demo -
- 1
-
Ultra Engine Early Access is Here
in Ultra Software Company Blog
A group blog by The Ultra Software Team in General
Posted
A big thanks goes out to all the beta testers who helped to make a smooth user experience at launch!