Pseudo 3D And Eye Of The Beholder Or Bard's Tale

Started by
18 comments, last by Anri 7 years, 8 months ago

I searched many places on the Internet and I have problem finding information on rendering not exactly Pseudo 3D but, a View such as the game Bards Tale or Eye of the Beholder. To start, I would like to keep it simple and do something like Bard's Tale.

So I am looking for information on how to organize a view. so a player can move forward, backward and turn left and right. The screen would need to update with a set of graphics that would composite a view. It sounds simple, but organizing it is a little difficult if I want it to look good. The stuff I found on the Internet is very hard to follow and not clearly written.

How do I know how many images I need. How do I know how much depth I need and etc. An organized explanation would help. I am familiar with C/C++, but I can follow other code examples.

Can someone help me or point me in the right direction?

Advertisement
Just go 3D. In this day and age, "keeping it simple" involves using modern hardware, api and engine capabilities, rather than revisiting old hacks that were originally intended to circumvent hardware limitations. You can use modern 3d apis and still mimic the old visual style.

The rendering technique in Eye of the beholder is not actually a 3D enviorment. There's two ways to achieve this old retro look. The first way is to manually draw the images by hand and then line them up to create the 3D world. The second way is to render in the fashion that DOOM 1 and 2 had done it.

But in all honesty, You're better off going into Full 3D now. It's going to be a hell lot easier to manage. And there's already been two modern games that's proved that it works very well still.

Legend of Grimrock 1 and 2.

Not just in this thread, but everywhere - I hear the same thing. I think it's time to learn some 3D game development.

Any suggestions on a simple intro to this? I would like to do this with C/C++. I found Dungeon Craft which is open source, but the code might be somewhat difficult for me to follow, because of lack of experience. I don't want to program in Java, and I am trying to distance myself from .NET. Don't get me wrong, .NET is great, but I finally realized the limitations of Visual Basic, in terms of program structure. Powerful language, but a little too clumsy now and no interest in C#, for the same reason as not wanting to use Java. Also, I prefer to stay away from DirectX, so I am looking into SDL or SFML. I really want to keep things lightweight. Even straight C is a consideration.

I think this would be a great first serious game project which I can then extend into Eye of The Beholder, style and from there, whatever comes next.

Don't scale up to larger programs until you have an understanding of the basics.

If you want to start at a low level like SDL, start with programming OpenGL from C++, eg from learnopengl.com . There are many other sites (so find a nicer one if you don't like this), but make sure you learn modern OpenGL with programming shaders (OpenGL 3.3 or higher).

An other option is to jump to the Unreal engine, I know nothing about it though, but I'd suggest you browse the site a bit to see what stuff it provides for you.

I started to do a similar project using SFML and C++. If you are interested I could share with you.

You can also check this document (which I used myself to understand a few concepts). Some parts are useless but you can find it useful to build the pseudo-3D dungeon view:

EYE OF THE BEHOLDER ENGINE MECHANIC EXPLANATION

Not just in this thread, but everywhere - I hear the same thing. I think it's time to learn some 3D game development.

Any suggestions on a simple intro to this? I would like to do this with C/C++. I found Dungeon Craft which is open source, but the code might be somewhat difficult for me to follow, because of lack of experience. I don't want to program in Java, and I am trying to distance myself from .NET. Don't get me wrong, .NET is great, but I finally realized the limitations of Visual Basic, in terms of program structure. Powerful language, but a little too clumsy now and no interest in C#, for the same reason as not wanting to use Java. Also, I prefer to stay away from DirectX, so I am looking into SDL or SFML. I really want to keep things lightweight. Even straight C is a consideration.

I think this would be a great first serious game project which I can then extend into Eye of The Beholder, style and from there, whatever comes next.

Your problem is that you're using visual basic :P.

.NET now modernly is used for C#. Which is just as powerful as Java. Both of which are just as powerful as C++.

That being said, it does not matter which of these languages you learn, as they all have been proven time and time again to be effective at creating video games.

Now, I don't quite know what you mean by clumsy. C# and Java are both pretty much on the same level of grace as C++ is. It's just they all do things differently.

I personally like C++ because it does exactly what you expect. There's far less rules governing it compared to the two managed languages. But that's also it's downfall. As there's a metric f*ck ton of graceful and ungraceful solutions that can be implemented in C++.

C# and Java are a pain to work with for me because of their additional rules. It makes the language more predictable, and graceful in the end. But at some points it feels like you're slamming your head against an invisible wall. For example, C#'s generics (it's version of templates) are type safe. This sounds great in practice. But depending on what you're trying to do... it might just be angry juice that you have to chug.

But the reason why people tell you to just use 3D for that effect, it's because the origional methods are far more complex than what we do now. You can still achieve it now in a simpler way. But it requires you to still learn the 3D math, concepts, and APIs.

Thanks for the many responses. The Eye of the Beholder document, I found. It's really why I ask additional questions. It was too confusing to follow. Also, it uses a solid maze structure, that does not allow you to pass through a plane in the basic design I think. I'm not sure, but I had trouble deciphering it.

CJ_COIMBRA

What language are you building it in. I understand SFML is both C++ and .NET.

Tangletail

Thank you for the detailed explanation. I am leaning toward C++, Today I just finished a 5 hour session with Visual Basic, trying to do what I posted about and working without 3D is hard, but I don't have 3D math knowledge except for a few basics. I'm an older programmer, out of school for over 20 years or so and I never really had a formal education in computer programming. So this will take a while.

Thanks again for the responses.

...Alberth

For sure I won't scale up, too much trouble as is!

I was using C++. Yes the document is confusing, just stick the the part where the author builds the pseudo-3D view. How he slice the images and fit them together to achieve reusability.

While I agree with the comments that "in this day and age, keeping it simple involves using modern hardware, api and engine capabilities", if you just want a simple dungeon crawler, many 3D Engines will overwhelm you with their unnecessary overhead and some 2D libraries such as SFML are quite modern and straightforward to use.

Yes definitely, and with all due respect, I am new here and I did not want to try to sound smarter than with the many experienced people in these forums. So to keep it simple, my idea is to agree with the last post. I am more than interested in 3D math, but I really would like to solve the problem in terms of simple arithmetic. So far even though it's difficult, I had the opportunity to extend my knowledge. Just one thing. The moving to C++ part is something I'm still interested in doing, but after learning some about binary custom files, I realized that .NET or Java are in fact not just good for tool development, but the underlying structure of most games and someone mentioned that C# is the way to go with most new development in games.

This topic is closed to new replies.

Advertisement