XNA FPS?

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

Post Reply
User avatar
WreckKa
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 11
Joined: Thu Jun 23, 2011 1:54 am
Favorite Gaming Platforms: SNES, 360, PC, N64
Programming Language of Choice: DarkBASIC, C#
Location: Lost somewhere deep in the cybernetic abyss of the internet.

XNA FPS?

Post by WreckKa »

I just want some opinions on something, and it may or may not be a stupid question. Would it be possible to write a 2.5d FPS in XNA? And if so, would it even be practical, or is there a more productive approach? I'm not planning on making a Doom or Wolfenstein clone, but in the distant future I would like to create a Daggerfall-like RPG, and I believe this would be a decent approach graphically. Opinions? 8-)
- - - v - ^ -@
User avatar
bnpph
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 75
Joined: Thu Mar 10, 2011 12:30 pm

Re: XNA FPS?

Post by bnpph »

2.5 FPS? What is that supposed to mean?

XNA is not the sort of thing you'd write a retro raycaster in - just use d3d as you would for a normal FPS.
Last edited by bnpph on Fri Jun 24, 2011 9:56 pm, edited 1 time in total.
N64vSNES
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 632
Joined: Thu Aug 12, 2010 11:25 am

Re: XNA FPS?

Post by N64vSNES »

I assume you mean 2.5D as in. 2D sprites in a 3D world.

If so then it'll work and it'll be fine if that's how you really want to do it.
qpHalcy0n
Respected Programmer
Respected Programmer
Posts: 387
Joined: Fri Dec 19, 2008 3:33 pm
Location: Dallas
Contact:

Re: XNA FPS?

Post by qpHalcy0n »

Yea 2.5D is an emulated 3D space. Usually they have limited cameras that simply pan along a plane and perspective is just handled with linear scaling of world elements.

Anywho, I've seen MANY a *VERY* ambitious project with XNA (including and far beyond raycasters). So I would not discount XNA at all. I would say go for it, because trust me if you're new to graphics API's, then I would NOT recommend just jumping headlong into D3D. Although its a very gracious and well presented API that I happen to favor, it could easily encumber a beginner. D3D10 and D3D11 would pose an even bigger problem for you. (This is under the presumption that if you DID jump into D3D that you'd be jumping into D3D9).
User avatar
WreckKa
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 11
Joined: Thu Jun 23, 2011 1:54 am
Favorite Gaming Platforms: SNES, 360, PC, N64
Programming Language of Choice: DarkBASIC, C#
Location: Lost somewhere deep in the cybernetic abyss of the internet.

Re: XNA FPS?

Post by WreckKa »

qpHalcy0n wrote:Yea 2.5D is an emulated 3D space. Usually they have limited cameras that simply pan along a plane and perspective is just handled with linear scaling of world elements.
Yes, that's exactly what I mean. Technically I wouldn't actually be rendering a 3d environment, it would just be scaling sprites on a 2d plane to give the illusion of depth and perspective. However, I don't know how complex that would make my collision, never mind trying to implement some sort of physics into it. I'll assume that it is possible though, unless anyone can see any obvious and impassable technical limitations?

:Edit: And yes, I'd like to avoid using true 3D rendering, as working with sprites and two dimensional planes saves a lot of power compared to model animation and rendering. For this project I want that power for other things, like large landscapes and levels that would be difficult to handle in actual 3d.
- - - v - ^ -@
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: XNA FPS?

Post by Falco Girgis »

WreckKa wrote::Edit: And yes, I'd like to avoid using true 3D rendering, as working with sprites and two dimensional planes saves a lot of power compared to model animation and rendering. For this project I want that power for other things, like large landscapes and levels that would be difficult to handle in actual 3d.
See, that's where you're wrong.

It did save a lot of power, waaaaaaay back in the day. That technique was used before GPUs were invented. That was back when you basically had access to a framebuffer and that was about it. Nowadays, GPUs are optimized to handle the kind of math and rendering that you are going to be forcing the CPU to do. In reality, I can almost guarantee you that your performance is going to suffer. I have never seen a 2.5D software-rendered implementation of anything outperform an equivalent 3D implementation.
User avatar
MadPumpkin
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 484
Joined: Fri Feb 13, 2009 4:48 pm
Current Project: Octopia
Favorite Gaming Platforms: PS1-3, Genesis, Dreamcast, SNES, PC
Programming Language of Choice: C/++,Java,Py,LUA,XML
Location: C:\\United States of America\Utah\West Valley City\Neighborhood\House\Computer Desk

Re: XNA FPS?

Post by MadPumpkin »

^this^
and for that reason, just use the regular D3D. If you want it to be retro just kill your resolution unreasonably and use 16 bit textures on very geometrically simple surfaces. Just look at quake for example. NOTHING you could possibly do in the first quake game would slow down a modern computer. In fact your GPU will probably scoff at you and hand the process instead to a hamster in a wheel that's better fit for it. ANYWAYS my point is. If you want it to run without effort and be retro. Just do those things and try to keep 3D models around Warcraft III quality and textures not too much better.
While Jesus equipped with angels, the Devil's equipped with cops
For God so loved the world that he blessed the thugs with rock
Image
Image
Image
User avatar
dr-snipe
Chaos Rift Newbie
Chaos Rift Newbie
Posts: 42
Joined: Sun Dec 19, 2010 10:09 pm
Programming Language of Choice: C++, Java, PHP
Contact:

Re: XNA FPS?

Post by dr-snipe »

If you use XNA you can use native model loading and then not have to use images as objects. I doubt it would slow it down at all since I believe XNA runs at 60 FPS quite well. It also isn't too challenging to accomplish.

Code: Select all

Model myModel = Content.Load<"Model">("Models\\player");
Loads .fbx models which Blender (free) exports :)

You can also run the XNA project on your Xbox and if you want, even sell it in the Indie Games Store and make a little money.
qpHalcy0n
Respected Programmer
Respected Programmer
Posts: 387
Joined: Fri Dec 19, 2008 3:33 pm
Location: Dallas
Contact:

Re: XNA FPS?

Post by qpHalcy0n »

Look, ya'll are again getting caught up in a X vs Y API dilemma. There's nothing inherent within XNA that would ban you from doing something as terribly simplistic as this, nor would there be anything in D3D that would do this either. What I'm saying is that problems this simple are completely API agnostic. This is a very trivial task for either API and you're going to get very similar results. I would not recommend going with D3D unless you have alot of experience with these API's in general. XNA is going to be a little easier to deal with for you so to that extent, i'd encourage you to see just what kind of power you can leverage from it. If it becomes a problem for you then I might encourage you to switch to D3D but I don't really see that being the case. It's like grabbing a 12lb sledge when a simple tack hammer will do the job and you're not having to swing this massive sledge hammer around to do it.

Modern API's have done an exceptional job at abstracting alot of the guesswork away from you so you should be able to just "pbthtththt!" splat to the screen and be relatively okay. So I would suggest using the API that is going to impede your progress to a lesser degree and having worked with D3D for over 10 years I can tell you that XNA is going to be MUCH more joyous for you to deal with than D3D will.

Take my word for it. XNA is *FAR* more capable than people here would be willing to admit that it is. Probably out of ignorance.
Aleios
Chaos Rift Cool Newbie
Chaos Rift Cool Newbie
Posts: 78
Joined: Mon Feb 21, 2011 2:55 am
Current Project: Aleios Engine
Favorite Gaming Platforms: PC, Dreamcast
Programming Language of Choice: C++
Location: Melbourne, Australia

Re: XNA FPS?

Post by Aleios »

XNA is a framework of classes for dealing with Games, whereas D3D is a General Purpose Graphics API. And i just wish to put this out: I love OpenGL :P

And, it is possible to make a 2.5d game in XNA, but why would you? XNA uses D3D, notice the 3D part ;)
If graphics isn't an issue for you then simply make some textured plane's like a wall wold just be a plane with, lets say bricks as the texture.

So my opinion would be to use 3D techniques, and use them however complex you wish.
Image
User avatar
GroundUpEngine
Chaos Rift Devotee
Chaos Rift Devotee
Posts: 835
Joined: Sun Nov 08, 2009 2:01 pm
Current Project: mixture
Favorite Gaming Platforms: PC
Programming Language of Choice: C++
Location: UK

Re: XNA FPS?

Post by GroundUpEngine »

Agreed, XNA is pretty easy to use so just do 3D! ;)
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: XNA FPS?

Post by Falco Girgis »

qphalcy0n wrote:Look, ya'll are again getting caught up in a X vs Y API dilemma.
That's one of the two things I've learned on these boards...

...at any given point in time, without any warning, even if the conversation was completely irrelevant, any thread has the potential to morph into one of the two:

1) X vs Y API war
2) X vs Y language war
User avatar
Ginto8
ES Beta Backer
ES Beta Backer
Posts: 1064
Joined: Tue Jan 06, 2009 4:12 pm
Programming Language of Choice: C/C++, Java

Re: XNA FPS?

Post by Ginto8 »

GyroVorbis wrote:
qphalcy0n wrote:Look, ya'll are again getting caught up in a X vs Y API dilemma.
That's one of the two things I've learned on these boards...

...at any given point in time, without any warning, even if the conversation was completely irrelevant, any thread has the potential to morph into one of the two:

1) X vs Y API war
2) X vs Y language war
And often times the tools involved are so similar it doesn't matter much.
Quit procrastinating and make something awesome.
Ducky wrote:Give a man some wood, he'll be warm for the night. Put him on fire and he'll be warm for the rest of his life.
Post Reply