all depends what you consider being important : for me it’s performance, for you it’s having more modern visuals
all depend the game you are making and the audience you target.
all depends what you consider being important : for me it’s performance, for you it’s having more modern visuals
all depend the game you are making and the audience you target.
I didn’t say modern visuals are important. Blender integration, longevity and portability are important to me.
I just wonder what causes slowdown in UPBGE 0.3.x so solving that would be very useful.
Metal backend just landed.
Eevee next is on the way,
So os vulkan back end.
Eevee next has gpu displace.
Until then armature skinning is the real slowdown besides most people use waaaay too many objects.
1 geonodes setup can generate a whole level.
Range is a good idea too.
It hits a different audience 3x can’t reach atm.
Don’t get me wrong, if UPBGE 0.3.0 perfomance sucks, I wouldn’t use that. Also this engine offers easy migrate path from old BGE games so they can be maintained.
It does not “suck” it is designed for quality over speed, but you can turn all that off.
You have to batch your own draw calls in 2.5x as well, but without geometry nodes it is hard not to bloat the scene graph doing it.
still, when you see people showcasing their project, it’s an empty map with max 5-10K vertex and it runs at 20fps even without armature modifiers. When it’s 60fps, it’s because they have a 3080GTX or i don’t know what. For instance, sadly, upbge 0.3 is not suited to play serious games with many active content on screen. Even, upbge 0.25, if you take the latest serious game project “the Future’s End” i’m pretty sure it runs hardly on 2019 hardware.
I hope upbge 0.3 will match Unity or Godot one day and give up with eevee
By default I experience a lot of color bleeding. (background shining through textures in front) and to get a cleaner look the only solution I know would be to set the “samples per frame” from 1 to 2 which again drops the frame rate even further.
drop the volumetric sample to 2x pixel,
use a sun lamp and set the max distance to something like a little more than your clip distance,
use diffuse shader or emit only if you don’t want the cost of PBR.
as for lamps you can bake a cycles light map and then it’s smoking fast.
again it is gamedev, “draw lots and lots of objects” is a bad design.
you can emit 95% of the scene with a single object with a single material and it draws like 200x faster.
DISABLE SHADOWS ON POINT LAMPS
old bge did not have these.
How about setting background to black and use some skysphere for background? This should disable that environment map feature that is in Eevee and Cycles.
I still think that BGE derived engines are best for visualization or recording “game” or simulution to get data to render animation. Not best solution for action games. And I think best place for speed improvements is Blender itself where everyone can benefit those.
I hope that some features are put to Blender and standardize some structures. Like some convention to store LOD levels to assets. It would be cool if those can be set in Blender and store metainformation, example in naming LOD0, LOD1, LOD2 and number in units so game engines can import and set automatically.
Seems it’s not just the background but also nearby smearing, as if the instruments get rendered double and shift when view is moved, I don’t know. Look at the instruments:
I tried disabling and simplifying the shaders but only setting more" samples per frame" seems to help.
I would appreciate it very much if anybody could make this render clean. File here:
Samples per frame must match total samples
Also some of that looks like TAA smearing.
I agree with BluePrintRandom.
Try to keep it simple as possible. 1 sample and total samples 1.
Of course you don’t have antialias then (and it is important in flight sim!) but you can set in driver FXAA on, that should work every rendering pipeline and it is fast.
You will also likely want to have some sunlight (because altitude can be seen from shadow) so adding one lightsource that casts shadow causes extra renderpass. Disabling shadows from objects that doesn’t need that speeds up rendering.
Thank you both!!! This fixes it! At the mentioned cost.
With higher samples It’s indeed an extreme smearing effect.
can we think the range is upgraded to version 3 like upbge maybe even better, or how?
https://vk.com/video157464442_456239241
in UPBGE, I consider normal performance - the question is different - how do you organize and implement everything to get a normal performance of 50-60 frames per second? there are nodes of materials that allow you to create a not bad picture (it is certainly impossible to compare with an unreal engine - but UPBGE is another engine without millions of dollars of investment) I received from UPBGE in my tests.2.5 about 8 million polygons in the scene are more than enough for the game and if you have a drop in frames per second, then you use vsync synchronization, or samples are included that your video card does not support, or the logic of the game is overloaded (errors in scripts, or printing values in scripts) or heavy sensors (nearby, radar) or procedural textures
I compare UPBGE to all engines on market, like Unreal Engine, Unity, Godot, CryEngine, Armory, Open 3D Engine…
60fps is normal, but 30fps is too. Actually some slow paced games may benefit running 24fps with motion blur to hide akward character animation.
I don’t think number of polygons is issue anywhere as long as polygon density is fine. And I found optimum triangle density in point where triangle areas are between 11-32px, and I set LOD levels where triangles size of 22px is swiched to higher LOD levels. With three LOD levels, single mesh distance from 100% can go as near as 14.7% distance without having visible coarse in geometry. Of course I can have long distance objects with three LOD levels more where I combine all separate meshes to one joined, and objects in near (like first person view taking object in hand) I can have closeup LOD.
Simple math tells that this polygon density, including some overdraw or several render passes works smoothly. Number of draw calls and bandwidth between RAM/VRAM → GPU easily limits more. Keeping all time memory bandwidth usage below 48Gb/s and draw calls below 700 should avoid performance issues. Of course less is better.
and there are also textures of the dds format - which significantly reduce the load on rendering, but the general settings also solve a lot
Blender requires import system that automatically changes file formats to native and compressed textures and sounds. Without texture compression, a lot of bandwidth is wasted. Even 1:8 ratios are possible so what normally requires 48Gb/s bandwidth can require 384Gb/s bandwidth.
I have AMD APU (integrated gpu) … my game is as fast with gpu than cpu when checking with cycles (and OpenCL activated)
What GPU gives a REAL boost with Blender 2.79 ? Any nvidia chip with Cuda ?