www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - My first game done in my engine is finally running on Xbox Series!

reply Hipreme <msnmancini hotmail.com> writes:
Firstly, I would like to thank specially here both Adam and 
Guillaume, as this would not be possible without their great 
projects such as `audioformats` and `arsd-official:image_files` 
and `arsd-official:ttf`, but this project still had many discord 
contributors for my unending questions, I started using D before 
understanding anything about compilers, linkers or whatever, and 
my engine even has its almost complete standard library!.

This is the first time my engine is able to play sounds (took me 
a lot of effort to completely ditch SDL), but I would like to say 
that using SDL increases a lot of complexity in your project 
unnecessarily, you need so many old C dependencies (DLLs), which 
you have then to start maintaining all those DLLs to build to 
your target platform, and I believe a lot of people here knows 
how hard is to maintain C build systems specially when you're 
dealing with platforms besides Linux.

By completely ditching SDL, I was able to reduce my dependencies 
on Android from 200MB to 25MB. In the case of Xbox, it went from 
40mb to 4mb (and at that time, image and audio loading weren't 
even working).

Congrats too for Walter developing the x64 output for DMD and 
kinke for LDC (LDC started distributing android compilers about 
the time I really joined D community).

Although many people here still says that D is dying, I can see 
how much of a milestone is doing that project, which has took me 
years in learning, testing, refactoring.

As this milestone was reached, I would like people to try coding 
D more, because, if I completely depended on C libraries to build 
my engine, I would be doomed! By the way, after doing bindings to 
Java, Lua, C++ and C in D, I can say that them are a lot easier 
to maintain than doing on those really old languages.

[Here's a sample screenshot from it running on 
xbox](https://i.ibb.co/RHkXrHz/IMG-20221115-145801.jpg)

As you can see, there's still a lot to do on porting etc.

And I would like to say that I'm not stopping there, I still got 
tons of work to do, this is my first time here posting explicitly 
about it, because it has finally reached an usable state ( think 
of it currently as a native Love2D ), and, in no time, it will 
have many game features to make it a lot more "Engine" like.


If you wish to take a look into the current code development, 
here it is:
https://github.com/MrcSnm/HipremeEngine
Nov 15 2022
next sibling parent Guillaume Piolat <first.last spam.org> writes:
On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 If you wish to take a look into the current code development, 
 here it is:
 https://github.com/MrcSnm/HipremeEngine
Congrats! It was impressing to see you advance that quickly on difficult ground.
Nov 16 2022
prev sibling next sibling parent reply Kenny Shields <mail kennyshields.net> writes:
On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 Firstly, I would like to thank specially here both Adam and 
 Guillaume, as this would not be possible without their great 
 projects such as `audioformats` and `arsd-official:image_files` 
 and `arsd-official:ttf`, but this project still had many 
 discord contributors for my unending questions, I started using 
 D before understanding anything about compilers, linkers or 
 whatever, and my engine even has its almost complete standard 
 library!.

 [...]
Nice, great to see other games and engines being developed in D. Does the game itself have a project page or is it mainly just for testing/prototyping with your engine?
Nov 16 2022
parent Hipreme <msnmancini hotmail.com> writes:
On Wednesday, 16 November 2022 at 16:44:18 UTC, Kenny Shields 
wrote:
 On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 Firstly, I would like to thank specially here both Adam and 
 Guillaume, as this would not be possible without their great 
 projects such as `audioformats` and 
 `arsd-official:image_files` and `arsd-official:ttf`, but this 
 project still had many discord contributors for my unending 
 questions, I started using D before understanding anything 
 about compilers, linkers or whatever, and my engine even has 
 its almost complete standard library!.

 [...]
Nice, great to see other games and engines being developed in D. Does the game itself have a project page or is it mainly just for testing/prototyping with your engine?
Yes! I'll share the code in the future on a separate repository as sample games that you can do in my engine. Next game coming up is a super mario bros clone, after I finish fixing it for Android (which is almost done)
Nov 16 2022
prev sibling next sibling parent reply zjh <fqbqrr 163.com> writes:
On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 https://github.com/MrcSnm/HipremeEngine
Can we use it on Windows?
Nov 16 2022
parent reply Hipreme <msnmancini hotmail.com> writes:
On Thursday, 17 November 2022 at 01:20:59 UTC, zjh wrote:
 On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 https://github.com/MrcSnm/HipremeEngine
Can we use it on Windows?
Yes, HipremeEngine is being developed Windows first. Which just made me remember that I need to test on linux again.
Nov 17 2022
parent reply Sergey <kornburn yandex.ru> writes:
On Thursday, 17 November 2022 at 11:21:35 UTC, Hipreme wrote:
 On Thursday, 17 November 2022 at 01:20:59 UTC, zjh wrote:
 On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 https://github.com/MrcSnm/HipremeEngine
Can we use it on Windows?
Yes, HipremeEngine is being developed Windows first. Which just made me remember that I need to test on linux again.
If Linux will be supported it could be used on Steam Deck :)
Nov 17 2022
parent Hipreme <msnmancini hotmail.com> writes:
On Thursday, 17 November 2022 at 12:02:07 UTC, Sergey wrote:
 On Thursday, 17 November 2022 at 11:21:35 UTC, Hipreme wrote:
 On Thursday, 17 November 2022 at 01:20:59 UTC, zjh wrote:
 On Tuesday, 15 November 2022 at 18:42:15 UTC, Hipreme wrote:
 https://github.com/MrcSnm/HipremeEngine
Can we use it on Windows?
Yes, HipremeEngine is being developed Windows first. Which just made me remember that I need to test on linux again.
If Linux will be supported it could be used on Steam Deck :)
Linux is supported at the moment, it is just that I have been quite some time without testing, but there should not be too many difference. Android is linux too, and my engine does supports Android :D
Nov 17 2022
prev sibling parent reply thebluepandabear <therealbluepandabear protonmail.com> writes:
 If you wish to take a look into the current code development, 
 here it is:
 https://github.com/MrcSnm/HipremeEngine
Big hats off to you. How hard was it in terms of general design, and how much math did you need to learn out of interest?
Nov 20 2022
parent Hipreme <msnmancini hotmail.com> writes:
On Monday, 21 November 2022 at 01:14:41 UTC, thebluepandabear 
wrote:
 If you wish to take a look into the current code development, 
 here it is:
 https://github.com/MrcSnm/HipremeEngine
Big hats off to you. How hard was it in terms of general design, and how much math did you need to learn out of interest?
The math is not that hard, as most of it depends on understanding specially the Model View Projection matrix, which you can find nice tutorials on internet. The rotation being the hardest part, although I did not use yet quaternions for that. The engine design I was quite experienced in abstraction development, though, almost for every platform I added, I needed to refactor a bit, the progress is fairly incremental, I really doubt one could write a design for it and after adding a couple of platforms and libraries, it being the same way as in the start. One must always remember that for an abstraction, you need to use the most complex/verbose as the rule, the simple/direct one will be basically automatic to implement. I believe the only code I yet need to touch again is the ErrorHandler, which I have it a bit underused as most of things just worked.
Nov 23 2022