I need advice regarding development of the game

Started by
6 comments, last by ChuckE 9 years, 4 months ago

Hi there!

English is not my native language so if there are some mistakes - I am sorry in advance smile.png

I want to develop a game. I have an idea and have written documents regarding it(main story, missions' descriptions(some of them), game mechanics and etc. - I was a writer in the past and it's the easiest thing for me - one of my hobbies is to create plots for stories or game mechanics. Well...whatever.

At first I wanted to write a story - but I think it won't be satisfying enough because...well...during the development writing and finalizing the plot will be essential part so...I'll kill two birds with one stone.

Then I wanted to draw comics or manga - but then realized that my drawing skills are so low-level that they can be considered as non-existentlaugh.png . So I decided to study drawing and maybe in the future I'll be able to draw art for my game smile.png.

Well...whatever.

So in the end I decided to start game development.

Back to the main topic.

As for game:

It will be RPG with pixel-like graphics in 2.5D. So basically isometric. Why? Because full 3d for pixel art....Well not that good looking and full 3D is impossible for me(I don't have any 3d modeling skills(despite having some Maya experience - but everything ended with small house and some lighting) and I'm not that interested in learing it. Also pixel art can possibly hide my bad drawing skill - after all I can draw at least non existent cars and some simple characters. Also pixel art is rather colorful and stylish.

As for language I'd like to use C++. Why? Because I enjoy shooting in the foot biggrin.png Also being a Java developer I'm rather tired of its forgiveness at work mellow.png. I have not got a lot of experience with C++ (one-two years) - so I'm planning now to look into it seriously(and in boost library too)

As for technology....I want to use OpenGL because I had experience with it (with freeglut and GLFW in particular + libraries like assimp, glm, irrklang etc.) at university. But I don't know whether I should use raw OpenGL(glut I believe is one of the closest) or GLFW or SDL or some other. I'd like to hear your advice if possible in that regard. Also I want to write my own engine (being a some kind of geek I highly welcome writing everything myself) - I know that it's not possible to write something like UE or CryEngine but for pixel-like graphics I don't think it's needed(but I think I some physics engine would be interesting to develop for it). Also I took a look into RPG Maker ACE but I didn't like it.

I am not planning to write the game for money - of course if it will be finished one day it would be interesting to try selling it - I'm in my early twenties so everything is possible biggrin.png

Additionaly I have experience with C#(it was my primary language at university but in last years I chose Java route). Also I learnt Python for some time (because I heard that Maya UI was developed using it so because I wanted to create a game I decided to take a look at it). I heard that Lua is popular for writing script so I'll look into it in the future.

So to finalizing everything I have a questing - do I really need to use c++ and opengl for my purposes? Or I should use some already created engines or another language at all?

P.S. Sorry for the long post. I like writing after all biggrin.png

Advertisement
Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

My primary platform is Windows. So I should use DirectX instead?

My choice of OpenGL was based on having experience with it (though this experience I can repeat with DirectX in one month or less(simple shaders, GPU buffers)

Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

My primary platform is Windows. So I should use DirectX instead?

My choice of OpenGL was based on having experience with it (though this experience I can repeat with DirectX in one month or less(simple shaders, GPU buffers)

#1 Yes.
#2 If you have time to learn about DirectX®, do it. In DirectX® we generally have 500 FPS instead of 60 FPS on OpenGL® depending of the machine.
DirectX® has nothing to do with OpenGL®. You'll see that they're different architectures as you go. OpenGL® is a state machine, current DirectX® versions are based on raw resource data and resource views - a more specialized way of acessing the resources. Learn DirectX® 11 and don't even think about support DirectX® 10, 10.1 because you'd be regretting.
Learning OpenGL® first instead of DirectX® when possible is usually a mistake in today's days.

Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

My primary platform is Windows. So I should use DirectX instead?

My choice of OpenGL was based on having experience with it (though this experience I can repeat with DirectX in one month or less(simple shaders, GPU buffers)

#1 Yes.
#2 If you have time to learn about DirectX®, do it. In DirectX® we generally have 500 FPS instead of 60 FPS on OpenGL® depending of the machine.
DirectX® has nothing to do with OpenGL®. You'll see that they're different architectures as you go. OpenGL® is a state machine, current DirectX® versions are based on raw resource data and resource views - a more specialized way of acessing the resources. Learn DirectX® 11 and don't even think about support DirectX® 10, 10.1 because you'd be regretting.
Learning OpenGL® first instead of DirectX® when possible is usually a mistake in today's days.

Oh! I see.

When I was talking about repeat I meant that I should learn a little HLSL instead of GLSL and understand how to work with GPU using DirectX.(after all I created a small scene 30fps wih building, sunlight, couple of objects, skybox and landscape in the past using openGL)

Yes I've got lots of time because after all it's a hobby. But does DX require additional libraries ? I Thought it has a lot of build-in stuff.

But I see your point so I'll try to dig into DirectX.

P.S. my current PC does not support DX11 - it's based on geforce 9xxx GT generation. in near future I'll upgrade to 970 for sure. but not now.

Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

My primary platform is Windows. So I should use DirectX instead?

My choice of OpenGL was based on having experience with it (though this experience I can repeat with DirectX in one month or less(simple shaders, GPU buffers)

#1 Yes.
#2 If you have time to learn about DirectX®, do it. In DirectX® we generally have 500 FPS instead of 60 FPS on OpenGL® depending of the machine.
DirectX® has nothing to do with OpenGL®. You'll see that they're different architectures as you go. OpenGL® is a state machine, current DirectX® versions are based on raw resource data and resource views - a more specialized way of acessing the resources. Learn DirectX® 11 and don't even think about support DirectX® 10, 10.1 because you'd be regretting.
Learning OpenGL® first instead of DirectX® when possible is usually a mistake in today's days.

Oh! I see.

Yes I've got lots of time because after all it's a hobby. But does DX require additional libraries ? I Thought it has a lot of build-in stuff.

P.S. my current PC does not support DX11 - it's based on geforce 9xxx GT generation. in near future I'll upgrade to 970 for sure. but not now.

D3DX11 is deprecated;

You'd be using D3D11 with the DirectX® 11 Shader Compiler.

To load textures you can write your own or use the DirectX® Toolkit(s) available online;

I have a 8400GS running DirectX® 11 in my development system. It doesn't do DirectX® 11 hardware support , but I have DirectX® 10.1 hardware support (altough it is not recommended for production).

So yes, go with DX11 without thinking about the past.


When I was talking about repeat I meant that I should learn a little HLSL instead of GLSL and understand how to work with GPU using DirectX.(after all I created a small scene 30fps wih building, sunlight, couple of objects, skybox and landscape in the past using openGL)

So you're already on the half of the way.

Translating OpenGL® to DirectX® takes time (since is not the same architecture). But worth it because most of the advanced material that we deal with, uses HLSL as the shader language, like that.


When I was talking about repeat I meant that I should learn a little HLSL instead of GLSL and understand how to work with GPU using DirectX.(after all I created a small scene 30fps wih building, sunlight, couple of objects, skybox and landscape in the past using openGL)

So you're already on the half of the way.

Translating OpenGL® to DirectX® takes time (since is not the same architecture). But worth it because most of the advanced material that we deal with, uses HLSL as the shader language, like that.

I don't think it's a half...It's just the begininng because when I was doing it I was not even relied on OOP and etc. Some monolith part of code....But well there was some camera class....

Looks like you're answering your own questions.
Don't waste your time looking if SDL is better than GLFW because they won't define the quality of your game, programming in modules will. Let a game engine module be responsable of what should do and let the game merge everything.
C++ is the standard language in the game industry.
So, you just answered your own questions.
Language: C++;
Framework: GLFW or SDL;
A 2.5D isometric game;
API: which is best for the platform that you're planning support; Windows®? DirectX®. iOS? OpenGL ES.

My primary platform is Windows. So I should use DirectX instead?

My choice of OpenGL was based on having experience with it (though this experience I can repeat with DirectX in one month or less(simple shaders, GPU buffers)

#1 Yes.
#2 If you have time to learn about DirectX®, do it. In DirectX® we generally have 500 FPS instead of 60 FPS on OpenGL® depending of the machine.
DirectX® has nothing to do with OpenGL®. You'll see that they're different architectures as you go. OpenGL® is a state machine, current DirectX® versions are based on raw resource data and resource views - a more specialized way of acessing the resources. Learn DirectX® 11 and don't even think about support DirectX® 10, 10.1 because you'd be regretting.
Learning OpenGL® first instead of DirectX® when possible is usually a mistake in today's days.

Oh! I see.

Yes I've got lots of time because after all it's a hobby. But does DX require additional libraries ? I Thought it has a lot of build-in stuff.

P.S. my current PC does not support DX11 - it's based on geforce 9xxx GT generation. in near future I'll upgrade to 970 for sure. but not now.

D3DX11 is deprecated;

You'd be using D3D11 with the DirectX® 11 Shader Compiler.

To load textures you can write your own or use the DirectX® Toolkit(s) available online;

I have a 8400GS running DirectX® 11 in my development system. It doesn't do DirectX® 11 hardware support , but I have DirectX® 10.1 hardware support (altough it is not recommended for production).

So yes, go with DX11 without thinking about the past.

Oh! I did not know that DirectX 11 can used in old video cards. I thought it's like with DirectX 10 when old video cards did not support it.

Maybe I'll do small update to R9 radeon card (I can afford only it for now)

This topic is closed to new replies.

Advertisement