Author Topic: So I wondered if Aether3D went unnoticed  (Read 14644 times)

0 Members and 3 Guests are viewing this topic.

Offline Matrefeytontias

  • Axe roxxor (kinda)
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1982
  • Rating: +310/-12
  • Axe roxxor
    • View Profile
    • RMV Pixel Engineers
Re: So I wondered if Aether3D went unnoticed
« Reply #15 on: April 29, 2014, 02:29:26 pm »
Well, in my opinion that's pretty much everything that can achieve decent speed, I mean an engine unusable outside of its particular context. But it can be done.

Offline Streetwalrus

  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3821
  • Rating: +80/-8
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #16 on: April 29, 2014, 02:47:32 pm »
Well, when you look at all the engines out there, they nom all the CPU leaving few room for the actual game. :P I've never seen a game made for these engines.

Offline Matrefeytontias

  • Axe roxxor (kinda)
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1982
  • Rating: +310/-12
  • Axe roxxor
    • View Profile
    • RMV Pixel Engineers
Re: So I wondered if Aether3D went unnoticed
« Reply #17 on: April 29, 2014, 02:52:35 pm »
What do you mean "all the engines out there" ?

Offline Hayleia

  • Programming Absol
  • Coder Of Tomorrow
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3367
  • Rating: +393/-7
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #18 on: April 29, 2014, 02:55:17 pm »
What do you mean "all the engines out there" ?
What do you mean 'What do you mean "all the engines out there" ?' ? :P
Even just you have at least 4 engines :P
(like full Axe, full ASM, full vertices and full faces or something)
I own: 83+ ; 84+SE ; 76.fr ; CX CAS ; Prizm ; 84+CSE
Sorry if I answer with something that seems unrelated, English is not my primary language and I might not have understood well. Sorry if I make English mistakes too.

click here to know where you got your last +1s

Offline Streetwalrus

  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3821
  • Rating: +80/-8
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #19 on: April 29, 2014, 03:01:59 pm »
You've just been pwned. :P

Offline ben_g

  • Hey cool I can set a custom title now :)
  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +125/-4
  • Asm noob
    • View Profile
    • Our programmer's team: GameCommandoSquad
Re: So I wondered if Aether3D went unnoticed
« Reply #20 on: April 29, 2014, 04:33:46 pm »
I don't think a 3D engine like what's being made for console and PC games is something that should be done on calcs for more than trying to push them to their limits etc. Rather, I agree with Runer that a hybrid engine optimized for a game in particular is better.
Well, I'm pretty sure that actual 3D games on calculators are possible. You do indeed use a lot of CPU on the 3D, but so does grayscale, and there are some very good grayscale games out there.
Besides, the resolution of the calculator is a big help for this as well. The low resolution improves the speed of the vector graphics (since not a lot of pixels need to be drawn then), and the monocrome graphics make it possible to cheat with the visibility in ways that just wouldn't work well with colors.

A few tricks to speed up the rendering:
 - You can avoid a lot of Z-ordering by dividing your level in the correct segments and rendering them in the correct order depending on which sector you're in (which can be predefined instead of calculated on the fly) You can even completely skip the sectors that are invisible (read: behind walls) if you do this.
 - You should not fill polygons that don't have anything behind them (or if they will only be drawn on something that has a plain white background). Just draw the outlines and you're fine. In combination with the previous technique, you also don't have to fill objects that only have sectors behind them that are hidden from your current point of view)
 - You can further avoid filling and Z-ordering for objects using a wireframe model by checking the camera position relative to the model and only draw the sides of the model that are facing the camera.
 - Finally, limit the complexity. Complex levels with lots of vertices and edges are quite slow to render, and doing collision checking on them can be a nightmare. Besides, because of the low resolution, a simple level looks much cleaner and clearer anyway. Also, limit the textures. While textures can look nice,they slow down the rendering a lot, and level can also look good with only a few textures (see the nostromo screenshot above). Besides, having a lot of textures can make it hard to see stuff in front of it (I often have this problem with raycasters).
I don't really have enough stuff yet to test the first technique, but I've tested the final two in testcases, and they seem to work really well.
The collision library I'm working on will probably showcase those three techniques as well.
Even though you're right that 3D for calculators always has to be optimized a bit for each game. If you just want to feed the engine a big, unoptimized world and expect it to do everything for you, it has to be a huge engine that will probably be quite slow as well.
And I think this is what made a lot of 3D projects die: While the calculator is able to handle it well, when you want to do anything more complicated than a 3D tunnel game, the level design can be a real nightmare, especially compared to a simple tilemap. This immediately makes most 3D projects rather big projects, and unfortunately, in the calculator community, big projects tend to easily die.
My projects
 - The Lost Survivors (Unreal Engine) ACTIVE [GameCommandoSquad main project]
 - Oxo, with single-calc multiplayer and AI (axe) RELEASED (screenshot) (topic)
 - An android version of oxo (java)  ACTIVE
 - A 3D collision detection library (axe) RELEASED! (topic)(screenshot)(more recent screenshot)(screenshot of it being used in a tilemapper)
Spoiler For inactive:
- A first person shooter with a polygon-based 3d engine. (z80, will probably be recoded in axe using GLib) ON HOLD (screenshot)
 - A java MORPG. (pc) DEEP COMA(read more)(screenshot)
 - a minecraft game in axe DEAD (source code available)
 - a 3D racing game (axe) ON HOLD (outdated screenshot of asm version)

This signature was last updated on 20/04/2015 and may be outdated

Offline Streetwalrus

  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3821
  • Rating: +80/-8
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #21 on: April 29, 2014, 05:24:13 pm »
Actually what I was saying is that instead of trying to make a full fledged engine, a per game optimized engine is better because smaller and faster since it only has the features you need and it's part of your code, not a library.

Offline Matrefeytontias

  • Axe roxxor (kinda)
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1982
  • Rating: +310/-12
  • Axe roxxor
    • View Profile
    • RMV Pixel Engineers
Re: So I wondered if Aether3D went unnoticed
« Reply #22 on: April 29, 2014, 06:15:44 pm »
What do you mean "all the engines out there" ?
What do you mean 'What do you mean "all the engines out there" ?' ? :P
Even just you have at least 4 engines :P
(like full Axe, full ASM, full vertices and full faces or something)
Hum <_< it's quite a compliment from you to call these "engines" (Vertex3Dlib, ThreeDee, AxeJh3D and AxVectors respectively). They are more like sets of functions (actually like the original Juha3D).

You've just been pwned. :P
Ooooow yeah, dat useful post.

ben_g : what I wondered a lot was : "is detecting occlusion slower than the actual stupid drawing ?" and it appeared to be a good question.

Actually what I was saying is that instead of trying to make a full fledged engine, a per game optimized engine is better because smaller and faster since it only has the features you need and it's part of your code, not a library.
I agree.

Offline TheMachine02

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 452
  • Rating: +105/-0
  • me = EF99+F41A
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #23 on: April 30, 2014, 07:47:21 am »
Actually what I was saying is that instead of trying to make a full fledged engine, a per game optimized engine is better because smaller and faster since it only has the features you need and it's part of your code, not a library.
I agree.

Or make a library which only include basic function, and let the user do what he wants to do. (Cause some function must be there, like projection or such).
AXE/asm programmer - unleash the power of z80 //C++//C

epic 3D things http://www.ntu.edu.sg/home/ehchua/programming/opengl/CG_BasicsTheory.html

Offline tr1p1ea

  • LV7 Elite (Next: 700)
  • *******
  • Posts: 647
  • Rating: +110/-0
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #24 on: April 30, 2014, 09:05:28 am »
Not to hijack this thread but 3D games are possible on calc. I have a few demos of my own that have a fair bit of stuff in them like basic AI and collisions etc:





Not sure if you can tell whats going on, but it just flying around shooting the objects. Only the xwing moves in the interactive demo, but thats just because the others are being told to stay still.

Aether3D was possibly the best engine performance wise, it could render complex objects at very good frame rates.

But ben is right, you need to be considerate with level design. Thats why i chose a spacesim since you dont need an environment beside some stars and planet sprites. Not saying that i will guarantee that ill finish, but i planned on having a max of 6 objects (like a broken freighter to protect, 1 wingman and waves of 3 enemies to destroy for example).
« Last Edit: April 30, 2014, 09:16:49 am by tr1p1ea »
"My world is Black & White. But if I blink fast enough, I see it in Grayscale."


Offline Streetwalrus

  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3821
  • Rating: +80/-8
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #25 on: April 30, 2014, 11:11:16 am »
Does that use gray scale ? O.O It looks totally awesome. :D

Offline ordelore

  • LV4 Regular (Next: 200)
  • ****
  • Posts: 168
  • Rating: +7/-0
  • Genius and Friend
    • View Profile
    • ordelore8x
Re: So I wondered if Aether3D went unnoticed
« Reply #26 on: April 30, 2014, 04:40:04 pm »
Yay! tr1p1ea hasn't forgotten about the xwing game!
I am a friend.
I mine Bitcoins.

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: So I wondered if Aether3D went unnoticed
« Reply #27 on: May 01, 2014, 04:10:42 am »
I wonder if a 3D remake of Illusiat 3 would be possible? Dungeons were pretty simple in the original version.

Offline GinDiamond

  • LV3 Member (Next: 100)
  • ***
  • Posts: 71
  • Rating: +2/-2
  • I dont always fail at life, but when I do, I dont
    • View Profile
Re: So I wondered if Aether3D went unnoticed
« Reply #28 on: May 01, 2014, 11:12:13 am »
I wonder if tr1p1ea will finish the xwing game

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: So I wondered if Aether3D went unnoticed
« Reply #29 on: May 01, 2014, 11:55:24 pm »
IIRC he still plans to finish what he posted above, but for now he is working on xLIBC features and I believe he also had a Mode 7 engine for the CSE.