Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

AppGameKit Studio Chat / Car/boat/plane etc physics Request Discussion

Rick Nasher
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 31st Mar 2019 00:53 Edited at: 31st Mar 2019 02:30
That video actually was done in AGK2/Studio by GaborD, with some shaders in place.

As I summarize some of his quotes on the matter(not from here). Hope he doesn't mind, for it proves the point that it's *not* AGKS or fake and shows what it is and I know he doesn't want to go round defending himself, so :

Quote: "
Hey hey, my stuff is not just for high end lol. Runs just fine on my midrange crapola. )

In the end, the pizzazz in 3D is just that. It's show. I mean, I love it, showoffy 3D is right up my alley. )
But it's just a bit of eyecandy sprinkled on top. I am not great at anything, my only skill is figuring out how to leverage an engine's functionality to make stuff look like I want it to look. The heavy lifting is still done in the core engine and in asset creation.

... AppGameKit can do it without breaking a sweat.


I can assure you it's not some offline render or such trickery. Don't underestimate the power of AGK. It's a pretty solid engine, similar to NB's raw power. That power is a bit hidden ofcourse, because the stock rendering is pretty oldschool, but hopefully that will be addressed with Studio.


Had some free time... added Buffoon Mode!
This is for people with not a lick of common sense. Those people who think "But if 4K is totally taxing on my midrange rig, what if I render at 8K?"
Now I know. 4x supersampling is the thing to do. It's slow as heck (150ish FPS, so basically still more than enough for a non superfast-action game) but looks really crisp (no muddyness from post-AA) and pretty clean in movement, almost no flickering, even on those super thin reflective edges.
Image is full 1080p, enlarge for details. Taken with post antialiasing off. Don't need it with this much supersampling. )
Also supports 2x and 3x supersampling, for the not totally crazy approach.
Still need to clean things up a bit, but it's pretty solid.
Now I want to add 8x supersampling, just for kicks.. I wonder if I can even create 16k wide buffers on my card. One way to find out I guess...


Naysayers will be naysayers.
All I did was make some screenshots and vids.
If asked about it on their forums I replied honestly, also helped some people with shader stuff. Until they started calling me liar and insulting me, which was when I stopped posting, have better things to do with my life than being angered by such nonsense.
After my current project is done I want to focus back on the lightmapper/worldbuilder, so we will see how far I get in the next months. I definitely want to make an openworld game with it. Once I have something substantial to show I'll post a showcase over there. Prolly gets me insulted again lol, but whatever.


My original plan (before Studio was announced) was to make the whole PBR thing an addon for AGK.
The issue is that PBR needs a ton of data generation systems, otherwise almost no one will be able to use it. I have to wait and see what Studio will have stock and build on that.
Just releasing some shaders (or even a whole demo) is pointless if people can't create own stuff without outside programs and in depth PBR knowledge. (how to create HDR lightmaps, probes, etc and get them into AppGameKit for instance)"

See also: AppGameKit Showcase /First little PBR test scene

So, yes was rendered real-time in AGK2/Studio, but with shaders, PBR by a really, really skilled guy.
Years of Service
User Offline
Joined: 15th Sep 2011
Location: Inverness
Posted: 31st Mar 2019 02:17
So back on the topic of physics, irrespective of what is or isn't engine and or coder responsibility, I don't think its unreasonable to include some demos of how basic physics work.

I actually think......and very much hope......that were heading toward an online marketplace, where things like this could be sold. If it's not on the road map, might even be worth putting that ask in.
Rick Nasher
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 31st Mar 2019 02:29
So true.
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 31st Mar 2019 14:04
I agree that it would be nice for some kind of marketplace like some of the other engines have that allow users and TGC to sell their own add-ons as plugins.

And.. I don't know what to say about puzzler
Senior Software Engineer - RotoGrinders
Years of Service
User Offline
Joined: 5th Jul 2009
Posted: 31st Mar 2019 14:33
Quote: "what sort of commands do people think is needed "

I don't have much experience with physics but exactly because of that I think the most simple way to go about this is to have physics bodies already defined and we could use this physics bodies on any mesh we choose.
For example.

bodyID = SetCarBody(int meshID);
wheelid = SetCarWheel(int bodyID, int wheelMeshID, int bodyMeshID)
SetCarWheelDriven(int wheelID, bool val)

So then, any wheel we choose for the body, regardless where we position them will be joint with the body and the one seleced to be "driven" would be the one that we can actually control and the rest like the body and wheel only follows the driven wheel
Then, to control

CarWheelApplyAcceleration(int wheelID, float valSpeedl, int axis)
CarWheelApplyDecceleration(int wheelID, float valSpeed, int axis)
CarWheelApplyRotation(int wheelID, float valSpeed, int axis)

So we can start moving around with our car, wheel must be driven for this command

Other properties we also need to set

SetCarBodyMassCenter(int meshID, float X, float Y, float Z)
SetCarBodyMass(int meshID, float massVal)

SetCarWheelMass(int meshID, float X, float Y, float Z)
SetCarWheelElacticity(int wheelID, float val)
SetCarWheelSpringElacticity(int wheelID, float val)

I think it should be enough to build a basic car that we can drive around.
And then similar commands for the boat and plane, I'm not much in to physics so I don't really have a clear idea what sort of properties and physics we need, but in order to keep it simple for those like me, I would like to have this kind of commands to put together a car, boat and plane.
Later, if/when we have a 3D editor, we could also choose this kind of properties in the editor.
Actually, it would be also nice to have this for both 2D and 3D as well, so each command could be named like Set2DCarBody()...Set3DCarBody()...etc
Years of Service
User Offline
Joined: 15th Sep 2011
Location: Inverness
Posted: 31st Mar 2019 15:37
Well going by Garbor's quotes above from Rik, it appears there is a world/3d editor in the mix somewhere, so maybe that is on the roadmap to come.

Quote: "After my current project is done I want to focus back on the lightmapper/worldbuilder"

Login to post a reply

Server time is: 2023-09-24 20:59:23
Your offset time is: 2023-09-24 20:59:23