Flappy Oric 3D

Want to talks about games you like, would like to see developed on the Oric, it's here.
Post Reply
jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Flappy Oric 3D

Post by jbperin » Mon Mar 16, 2020 10:32 pm

With permission of Rax I release here a 3D patched version of his outstanding Flappy Oric.

Image

The new feature is that, by using the V key while in game, you can switch the point of view between lateral view and first person view (bird's point of view).

Image

Here's the TAP file build with OSDK :
flappy3d.tap
Flappy Oric 3D
(31.14 KiB) Downloaded 7 times
From sources here.

Hope you enjoy :-)

User avatar
Symoon
Archivist
Posts: 1848
Joined: Sat Jan 14, 2006 12:44 am
Location: Paris, France
Contact:

Re: Flappy Oric 3D

Post by Symoon » Tue Mar 17, 2020 5:46 am

Find it hard to play in 3d, maybe the black and white version was easier... But anyway, that's a great crazy idea :mrgreen:

jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Re: Flappy Oric 3D

Post by jbperin » Tue Mar 17, 2020 7:22 am

Symoon wrote:
Tue Mar 17, 2020 5:46 am
Find it hard to play in 3d, maybe the black and white version was easier...
Arg Yes .. In an attempt to compensate speed between the two mode , i slowered down a bit the third person view and reduced the sleep time in first person view .. then it goes "faster" than in the black and white version .. :-(

Or perhaps is it the color render which is bit more geometrically confusing ..

User avatar
Dbug
Site Admin
Posts: 3211
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Flappy Oric 3D

Post by Dbug » Tue Mar 17, 2020 10:47 am

Technically, if you keep the movement on one axis, you could cheat a lot for the display and use pure raycasting and render by symmetry with big fat unrolled loops :)

jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Re: Flappy Oric 3D

Post by jbperin » Tue Mar 17, 2020 12:10 pm

Dbug wrote:
Tue Mar 17, 2020 10:47 am
Technically, if you keep the movement on one axis, you could cheat a lot for the display and use pure raycasting and render by symmetry with big fat unrolled loops :)
Yes !! :-)

You're totally right .. I would even say that what I'm doing here is pure brute force 3D rendering.
I take advanatage neither of the symmetry in the game scene .. nor of the single DOF restriction in movement.
Thus, in terms of performance, results obtained in this game could be the same in a less symmetric situation or with more DOF.

Being said that glOric estimated performance budget is :
  • 3D Point projection : 500 cycles / points / frame
  • Segment drawing : 3000 cycles / segments / frame
  • Face drawing : 7000 cycles / frame / face
  • Partiule drawing : Not estimated yet
And that the game scene used for the FPV in Flappy Oric 3D contains the following elements:
  • 3D points = 20,
  • Nb Faces = 8,
  • Nb Segments = 16,
  • Nb Particules = 6,
So.. just using the symmetry to divide the number of projection by 2 would allow to gain 10 * 500 = 5000 cycles / frame .

jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Re: Flappy Oric 3D

Post by jbperin » Tue Mar 17, 2020 2:36 pm

Just to give an idea of how simple it is to create 3D scene in Oric games, here's a presentation of the basic workflow used in making the Flappy Oric 3D FPV.

First came the idea and the global design:

Image

Next came a clean and neat detailled design:

Image

From this detailled design are identified points involved in shape's geometry:

Image

For each point in the list above, there's an associated index which is used to reference this point in face or lines :

Image

That's what's coded into the the gl.c file.

User avatar
iss
Squad Leader
Posts: 993
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Flappy Oric 3D

Post by iss » Tue Mar 17, 2020 7:36 pm

Congrats @jbperin!
This is very good achievement and really exciting. Keep going 3D!
jbperin wrote:
Mon Mar 16, 2020 10:32 pm
With permission ...
You or anyone else doesn't actually need to ask explicitly raxiss for permissions. All our sources which we made public are exactly for this purpose. We are very glad if someone find them useful and inspiring! Our intention is to release all sources we ever made but there is some (lot) work to make them also clean and good looking.

jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Re: Flappy Oric 3D

Post by jbperin » Wed Mar 18, 2020 2:31 pm

iss wrote:
Tue Mar 17, 2020 7:36 pm
Congrats @jbperin!
This is very good achievement and really exciting. Keep going 3D!
thank you iss ;-)
iss wrote:
Tue Mar 17, 2020 7:36 pm
there is some (lot) work to make them also clean and good looking.
I can witness that your games are as clean inside as they are beautiful and elegant outside.
Your source code is enjoyingly readable. Well designed. Mix of sobriety, efficiency and smartness.
I really found it was easy to plug the 3D stuff on it.
I'm also very glad and thankful for I could use this code to have a first real production involving glOric.
So thank you guys !!

jbperin
Officer Cadet
Posts: 38
Joined: Wed Nov 06, 2019 11:00 am

Re: Flappy Oric 3D

Post by jbperin » Sat Mar 21, 2020 9:31 pm

iss wrote:
Tue Mar 17, 2020 7:36 pm
there is some (lot) work to make them also clean and good looking.
Iss , I reworked the C code that I had added to Flappy Oric to make the 3D version.
And I tried to push it to the quality standard of the raxiss's production.
Here's the result.

Tell me what you think.

I also wanted to show you an other source code that I produced with the same concern of cleanlyness and readibility.
It is a 3D Walkthrough Template that I published here
And I was wondering if .. by any chance ... this code source could inspire you and rax as much as your code inspires me.

Who knows ..

User avatar
iss
Squad Leader
Posts: 993
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: Flappy Oric 3D

Post by iss » Sat Mar 21, 2020 11:27 pm

jbperin wrote:
Sat Mar 21, 2020 9:31 pm
...Tell me what you think.
Cool! IMHO it looks really pro 8) .
Actually I don't have any special personal preferences related to source code.
May be just two simple rules which I try to follow: to use spaces for indentation and the formatting to be consistent for all files of the project. That's it.

Else your 3D engine is impressive and hm, ... will see... ;)

Post Reply