The shoutbox is currently out of service. Join us on Discord instead.
You can help CodeWalrus stay online by donating here.

X3D - A 3D engine for TI68k & Nspire Calculators

Started by catastropher, June 27, 2015, 02:37:43 am

Previous topic - Next topic

0 Members and 3 Guests are viewing this topic.

Snektron

Quote from: DJ Omnimaga on August 22, 2015, 01:39:47 am
Some coders also starts larger projects but then gain extra experience in programming while their projects advances, so they find their old code messy and want to rewrite it.


That tends to happen to me lately :P
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


catastropher

Quote from: Cumred_Snektron on August 22, 2015, 10:14:57 am
Quote from: DJ Omnimaga on August 22, 2015, 01:39:47 am
Some coders also starts larger projects but then gain extra experience in programming while their projects advances, so they find their old code messy and want to rewrite it.


That tends to happen to me lately :P

Can't even tell you how many times I've done this!

So today I worked on bouncing physics for objects. Since the camera is an object, what better way to test it?

X3D Bouncing Physics: ShowHide


The renderer is kind of glitching out here and bouncing currently has some difficulty when hitting an edge between two rooms, but it's a solid start! :D
Creator of X3D, a 3D portal rendering game engine for Nspire, 68k, and PC

DJ Omnimaga

Haha that's pretty cool actually. As for the glitching I assume you mean the diagonal lines appearing in the roof or one of the walls?

catastropher

Yeah, I still have one or two (i.e. several) bugs to iron out haha Of course, the camera would probably never be moving like this; my thought was more for bouncy projectiles. Although, you could have a bouncy floor material ;)
Creator of X3D, a 3D portal rendering game engine for Nspire, 68k, and PC

DJ Omnimaga

By the way, when this engine becomes mostly functional, do you plan  to create a mini game out of it? A puzzle platformer where you use the objects to reach other areas would rule as an example game, plus it could convince some people to use the engine for their own games (if we get more 68K coders, that is) :D

CKH4



DJ Omnimaga

Yeah, everyone wants Portal in 3D for calcs I know. :P But I thought that a smaller scale project might be better to start up and to quickly showcase some of X3D capabilities


catastropher

Quote from: DJ Omnimaga on August 23, 2015, 12:30:39 am
By the way, when this engine becomes mostly functional, do you plan  to create a mini game out of it? A puzzle platformer where you use the objects to reach other areas would rule as an example game, plus it could convince some people to use the engine for their own games (if we get more 68K coders, that is) :D

Indeed I do! I just have no idea what I'd make yet :P First I should probably get the engine to a usable state. Ideally, a game that could run on one of the platforms should be runable on the others as well.

Quote from: CKH4 on August 23, 2015, 10:06:43 am
Portal 6(8k) :P

This may actually be possible once the dynamic portal system is in place (or at least a scaled down version of Portal). The thing I'm worried about is seeing a portal through a portal. I may have to set a recursion limit to prevent this. Descent is another that I'd really like to get working.
Creator of X3D, a 3D portal rendering game engine for Nspire, 68k, and PC

TheMachine02

Quote from: catastropher on August 23, 2015, 05:13:44 pm
The thing I'm worried about is seeing a portal through a portal. I may have to set a recursion limit to prevent this.


Welp. You even must do it  :P Even "true" portal game as a recursion limit.  Just iterate for a fixed number of time and discard everything when the limit is hit.

Either way, sound a promising project,that come along nicely :)

Snektron

A true see though portal? that would be amazing O.O
Legends say if you spam more than DJ Omnimaga, you will become a walrus...


catastropher

Quote from: TheMachine02 on August 23, 2015, 07:49:26 pm
Quote from: catastropher on August 23, 2015, 05:13:44 pm
The thing I'm worried about is seeing a portal through a portal. I may have to set a recursion limit to prevent this.


Welp. You even must do it  :P Even "true" portal game as a recursion limit.  Just iterate for a fixed number of time and discard everything when the limit is hit.

Either way, sound a promising project,that come along nicely :)

Thanks! I :D Yeah, the previous version had a recursion limit, I just haven't gotten around to implementing it in this version yet... there's so much that needs to be done!

Quote from: Cumred_Snektron on August 23, 2015, 08:51:23 pm
A true see though portal? that would be amazing O.O

Technically, the engine already does this: there's an implicit portal everywhere that two rooms (called "segments") are connected. I'll just have to add special cases for portals on walls. Of course, free-standing portals are a bit more tricky, but are still doable. I hope to one day add a portal gun for shooting a portal onto a wall ;)

In case anyone is interested as to what I worked on today, I did more work on the object system and added a bouncing box! It's still really glitchy, but hey, it's something! :D

X3D Bouncing Box: ShowHide
Creator of X3D, a 3D portal rendering game engine for Nspire, 68k, and PC

DJ Omnimaga

I wonder what would be the performance of a see-through Portal game... it would definitively need a recursion limit (perhaps 3 maximum?) in  case someone use a camera angle that almost freezes the game >.<. Or perhaps the game could stop rendering stuff as soon as it hits a certain time limit? (for example if you want 8 FPS then it would stop rendering lines as soon as it reaches 0.125 seconds of render time) But that could look weird at times.

Also Catastropher that is really cool :D. Will the engine support 2D scaled sprites? I forgot if it did or if it will do. It might allow more type of graphics in the game (such as a ball in this case)

catastropher

Quote from: DJ Omnimaga on August 24, 2015, 01:41:46 pm
I wonder what would be the performance of a see-through Portal game... it would definitively need a recursion limit (perhaps 3 maximum?) in  case someone use a camera angle that almost freezes the game >.<. Or perhaps the game could stop rendering stuff as soon as it hits a certain time limit? (for example if you want 8 FPS then it would stop rendering lines as soon as it reaches 0.125 seconds of render time) But that could look weird at times.

I'll have to play around with different solutions once I get the dynamic portal system working. Another thing I could do is to not allow you to place a portal in a spot where it's visible from the other one, though I'm not sure if I like that idea.


Quote from: DJ Omnimaga on August 24, 2015, 01:41:46 pm
Also Catastropher that is really cool :D. Will the engine support 2D scaled sprites? I forgot if it did or if it will do. It might allow more type of graphics in the game (such as a ball in this case)

Thanks! I made it so now you can have multiple boxes bouncing at the same time! :D As for 2D facing sprites, I've certainly considered it. The problem is that the sprites have to be clipped against doorways (i.e. the viewing frustum), and I don't know of an efficient method for doing this. In addition, with solid objects, you have no choice but to sort the objects by depth. This means doing a O(nlog n) sort every frame :( Worse, you have to draw white triangles to make them solid... With transparent objects, you don't have to do any sorting because it doesn't matter what order you draw them in. It'd suck if everything had to be transparent, but it really depends on whether I can come up with a really fast algorithm...
Creator of X3D, a 3D portal rendering game engine for Nspire, 68k, and PC

DJ Omnimaga

Yeah the idea might not be the best solution, else people will wonder why sometimes placing portals doesn't work.

And I see about 2D stuff. Sorry to hear

Powered by EzPortal