SGEngine

Previous topic - Next topic

SnooPI


Qedo

wonderful work and thanks for sharing.  :booze:
How long is it to complete?
ad maiora

Steinbock

Wow, great work  :good:
Time will come. It's just a matter of time...

SnooPI

I don't know (I wasted a lot of time in my work) but I think I can work on it in parallel, I would say 1 month or 2 to make it complete with all the examples.
But during the development I will put the updates online so that you can test them.

Thank you for your support  :booze:

Schranz0r

Ah Irrlicht Engine.  :good:
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

SnooPI

-The Irrlicht wrapper is not just a simple transcription of Irrlicht functions, it's a little more complex.
-The engine uses 2 wrappers, one for Irrlicht but also another for irrKlang (for 3D sound)
-In the future, I plan to add AI and then more advanced physics.
So it's not only Irrlicht Engine,  it's SGEngine  ;)

Thanks Schranz0r, as I know you worked on a wrapper for Irrlicht, you might be able to help me later when you have time.

SnooPI

#6
With a lot of delay (for lack of motivation I admit it :-[) here is a new update for SGE  :booze:

bigsofty

Quote from: SnooPI on 2021-Nov-17
With a lot of delay (for lack of motivation I admit it :-[) here is a new update for SGE  :booze:

Only had a quick look but it's very imressive work SnooPI! Nicely structured code, with lots of remarks.

Well done!  :good:
Cheers,

Ian.

"It is practically impossible to teach good programming style to students that have had prior exposure to BASIC.  As potential programmers, they are mentally mutilated beyond hope of regeneration."
(E. W. Dijkstra)

Qedo

this is a great job, congratulations SnooPI and thanks for sharing it

SnooPI

Quote from: bigsofty on 2021-Nov-17
Only had a quick look but it's very imressive work SnooPI! Nicely structured code, with lots of remarks.
The original Irrlicht wrapper was in this style, I kept it for clarity and to be able to understand it without difficulty even after years.
In addition, it saves me from having to write documentation ;) we understand perfectly the engine with only the examples.

Quote from: Qedo on 2021-Nov-17
this is a great job, congratulations SnooPI and thanks for sharing it
With pleasure  :booze:
Hope this engine will help to make quality 3D easily.

Thanks guys, I added 4 examples (from now on I would put "NEW" in the code for each new example).

dreamerman

Very nice, clean coding and well structured. Looks very easy to use. Checked several things, they are working without issues even on iGPU.
I have some tech questions, as always :D I'm curious, as Irrlicht could use several render API's (OGL, DX, software), You most likely are using OpenGL, are you creating another OGL context or using that already made by GLB? Does Irrlicht have now something more advanced than basic collision detection? (years ago they wanted to include some physic lib like Newton or Bullet if I remember correctly).
Such engine gives much more opportunities for more advanced 3d from start, so it gives some nice possibilities, one thing that is how portable this will be, for moment GLB main platform is Windows, but what about Linux (most likely should be simple and just use other headers), HTML5 (this may be tricky). Still current state of Proton and x86 emulation on MacOS can mitigate possible problems with this. Really nice to have another rendering back-end, even If now I would use it just for testing some things.

Thing about motivation, yeah, specially for larger project where so many things need to be done it sometimes hard, but I'm glad that you found perseverance to finish this ;)
Check my source code editor for GLBasic - link Update: 20.04.2020

SnooPI

#11
Oh sorry Dreamerman, it's only now that I see your message  :(

Quote from: dreamerman
Very nice, clean coding and well structured. Looks very easy to use. Checked several things, they are working without issues even on iGPU.
Thanks  :booze: Yes, anyway I only have that at home and it's an old iGPU  :D
But if it's fast on my PC, it's normally fast everywhere, even on mobile  ;)

Quote from: dreamerman
I have some tech questions, as always :D I'm curious, as Irrlicht could use several render API's (OGL, DX, software), You most likely are using OpenGL, are you creating another OGL context or using that already made by GLB? Does Irrlicht have now something more advanced than basic collision detection? (years ago they wanted to include some physic lib like Newton or Bullet if I remember correctly).
You are right, the first version of SGE uses OGL and DX9 but I noticed a lot of issues with Windows 10, apparently Microsoft wants the developers to ditch DX9 completely  ;/
So I dropped DX9 and at the same time the software rendering, it's technically interesting but without much interest for serious development. The Irrlicht DLL has also been updated (so it's smaller).
No real physics engine for the moment but I plan to implement one soon (as well as an AI).
SGE uses its own OGL context.
The collision detection is great and even though the physics is basic it can do some interesting things (see example 12).

Quote from: dreamerman
Thing about motivation, yeah, specially for larger project where so many things need to be done it sometimes hard, but I'm glad that you found perseverance to finish this ;)
Your encouragement helps me  ;)

I did a big update, restructured the code, added / rewrote some functions, optimized others and removed DX9
With OGL it's a bit slower in windowed mode but in full screen it's almost as fast (tested on my old iGPU  =D)
I also added 5 examples.

I put the engine on MediaFire to allow me to update it more easily for small changes (like adding a comment for example).
For big updates like bug fixes, optimization, adding examples, ... I would put a message here.

If you have any problems or questions, don't hesitate.
Happy Christmas to all (despite the Covid  :sick:).

bigsofty

Never noticed a new update, will have a go tomorrow, thanks again SnooPI

Quote from: SnooPI on 2021-Dec-08
If you have any problems or questions, don't hesitate.
Happy Christmas to all (despite the Covid  :sick:).

You too buddy!  :booze:
Cheers,

Ian.

"It is practically impossible to teach good programming style to students that have had prior exposure to BASIC.  As potential programmers, they are mentally mutilated beyond hope of regeneration."
(E. W. Dijkstra)

SnooPI

 :booze:  Bigsofty

New update.
Some functions have been rewritten and renamed, examples that used them have been updated.
Only 2 examples have been added but they are important because they show how to load a scene and create collisions from it.

I've put a link to an old version of irrEdit (in fact I've not yet tested the compatibility with the latest version  :-[)

Good fun.


dreamerman

Not sure how much to blame M$ and how much others like Intel, but from I discovered through digging in internet is that older iGPU's (most likely older graphic cards too) doesn't have proper Win10 drivers, they are using Win8.1 drivers with some tweaks/compatibility layer or whatever, that's why there are some issues - like not all hardware capabilities are exposed through those drivers - something is available/working ok in older Windows but not in >Win10, at least from what I found out/understand. It relates to both OpenGL and DirectX afaik, yet this may be wrong... I must admit that in some way I understand that, newer OS are for newer hardware so it can fully utilize it features and don't look behind (but it hurts :D)..

Nevertheless your Irrlicht wrapper works without problems, I checked all included examples, no visible issues found, all work with fluidity, mostly > 200fps (in windowed mode, beside BSP). The way You are doing this - keeping all core code behind curtain in SGE lib makes it really clear, simple to read and use, someone may be more familiar with this kind of scene management or have irr* background so would be easier for him to transit to GLB, another thing that some functions can be handy during prototyping phase.
Keep up good work, built-in some kind of physic will be interesting to see :-)

Happy Christmas! :)
Check my source code editor for GLBasic - link Update: 20.04.2020