Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

How difficult is it to create a simple pseudo-3D first/third person renderer?

Joined
Dec 17, 2013
Messages
5,072
What I mean is, let's say I have a state and logic layer that represents the actual state and behavior of the world. Now I want to create a simple display layer for it. Originally, I wanted to go with 2D, isometric or top-down. But this limits combat system options, as it's pretty hard to do a decent action based system within the confines of isometric/top-down 2D.

I was wondering about a simple pseudo-3D display, maybe similar to Daggerfall. If I remember correctly, in Daggerfall, NPCs and buildings would sorta rotate weirdly when you moved, because they were just sprites displayed in 3D.

I would just want to display the objects in front of me/character, they wouldn't have to have fully realistic perspective, just enough to convey things.

How difficult would this be to do?
 
Self-Ejected

DakaSha V

Self-Ejected
Joined
Aug 16, 2017
Messages
436
I don't understand what you want. do you want pseudo-3d (doom, duke nukem etc), or 3d with 2d sprites (daggerfall).
Or would very pseudo-3d be enough (wizardry 6 & 7, eye of the beholder etc)

edit: i did this in a game engine, but if you already have some kind of sprite rendering implemented, this is a 1-day job

https://giphy.com/gifs/wsZ3ErQ7Q9JEB00yK8

Something like wolfenstein should also be doable, quite easily (relatively speaking). Anything more than that is likely not worth doing on your own, unless youre incredibly talented
 
Last edited:
Joined
Dec 17, 2013
Messages
5,072
I don't understand what you want. do you want pseudo-3d (doom, duke nukem etc), or 3d with 2d sprites (daggerfall).
Or would very pseudo-3d be enough (wizardry 6 & 7, eye of the beholder etc)

edit: i did this in a game engine, but if you already have some kind of sprite rendering implemented, this is a 1-day job

https://giphy.com/gifs/wsZ3ErQ7Q9JEB00yK8

Something like wolfenstein should also be doable, quite easily (relatively speaking). Anything more than that is likely not worth doing on your own, unless youre incredibly talented

OK, I will elaborate a bit. I don't have much technical knowledge of 3D rendering beyond just playing games.

I just need a simple first person or third person display of the world state (the state/logic layer) that can display buildings, NPCs, and objects in the game world. The animated gif you linked is fine in terms of looks and quality, but the catch is, my renderer would need to support gridless movement and more than 4 directions of movement (maybe at least 8 to seem realistic for a real time action based game).

The only reason i need it to be 1st/3rd person is to have enough space to fit in an action combat system (different types of strikes, etc), which you cannot do in an isometric/top-down perspective in a way where the player can clearly see what's going on.
 

Heapcleaner

Novice
Joined
Mar 16, 2017
Messages
10
Hmm.. do you want something similar to wizardry ?

Difficulty in making first or third person perspective game lays within the scope and fidelity of your game. Creating something like wizardry 8 (with its level of fidelity) is technically quite easy these days with Unity (or Unreal Engine), you don't have to worry about low-level stuff like managing 3d scene graph, path finding, 3d audio etc. But what we already have in the engine may not suite our needs, in which case we can either change the design of our game within the limitation of what we can do in the engine (this is the easiest one), or learn how to do custom things that we need in the engine (the hard way).

There are a lot of other amazing tools out there that are easier to use than an engine (Unity, UE, or Lumberyard), such as SMILE builder or game maker. Tools with higher abstraction (e.g: RPG Maker) will limit what you can do with the game, but if those limitation is within the scope of your game then it is the best and fastest way to create your game.
 

Mustawd

Guest
The only reason i need it to be 1st/3rd person is to have enough space to fit in an action combat system (different types of strikes, etc), which you cannot do in an isometric/top-down perspective in a way where the player can clearly see what's going on.

Sounds like you’re describing a very basic 3d world with 2D sprites to represent stuff. Daggerfall like you said. Or even BaK.
 

VentilatorOfDoom

Administrator
Staff Member
Joined
Apr 4, 2009
Messages
8,600
Location
Deutschland
The engine used in Drakensang and Drakensang RoT (Nebula) is open source. It includes the D3D and OpenGL rendering code. Perhaps you can glean a few hints on how to do that stuff from the source code.
 

vlzvl

Arcane
Developer
Joined
Aug 7, 2017
Messages
190
Location
Athens
How difficult is it to create a simple pseudo-3D first/third person renderer?

If you do not have technical knowledge and want to do it from scratch, yeah it is pretty difficult and you need some theory first.
In the past those games were using the VGA directly (pixels) but nowadays there are pretty much only 2 graphic APIs, DirectX and OpenGL.
If you want your rendering engine to be modern, you will need to learn shaders as well which is another beast.
Then you need to learn about matrix transformation to setup properly your 1st or 3rd person cameras.
Then you need to learn about occlusion culling to skip unseen parts of your world for FPS reasons.
Then you need to write some equation to rotate your 2D objects to always face your camera.
(for OpenGL only) And since you want transparent sprites in a 3D world, then your need to render those objects back-to-front without depth writing to avoid glitches.
Then you need to automate some stuff like camera moving by keys or mouse.
And this is just a basic renderer for first person games.
Or you can just use a ready behemoth like Unity or RPG Maker and forget all this nonsense because yeah it is difficult.
 

Hoaxmetal

Arcane
Joined
Jul 19, 2009
Messages
9,157
guise I have played games since I was 5 years old pls how do I make a game engine
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom