Game idea - nothing specific

Pages: 12
I am thinking of making a 3d game using Visual Studio 2013 and DirectX. However, I am not really experienced in this kind of thing (though pretty good at C++ imo) so I'll just share my ideas for now and I'd like you to comment whether it's doable and give tips if you have any :)

The idea is as physics - obeying fighting (medieval knight style) game as possible. Key problems (that are probably out of my league)(there's a lot more, but they're a lot more manageable):

Every piece of armor AND human body (and maybe some of the environment) (I mean every single plate, bone, strip of leather,... - everything) is a separate object which can be cut (generate mesh dents and textures in areas of hits) and cut in a few pieces (generating mesh, textures, recalculating center and value of mass (according to center and volume of the piece cut off), actual friction (force * sin(angle) * <etc.>)),... You get my point here. No preset wounds or breaking points - all generated.

Implement cutting and blunt hit physics - calculating force, breaking point,... It can get pretty complicated: a sword hits a plate of armor, splits it partially, sword gets stuck because of friction, everything behind the plate feels the impact, calculating for damage (enough force in the plate to break a bone behind it?) and force (hit in the leg may = slip) from that,...

The third thing is I want to give as full control of the character as possible - as few as possible presets, you can move your weapon and body as freely as possible - pretty much like controlling actual muscles in body. Can think of ways to implement it in reasonable ways (not using key kombos for every muscle :D)?

Well, these are the main ones I think... Please leave a comment :)
If I were you I'd look into multi-threading. Those resource intensive calculations would be faster if you used a thread pool. 2 cores should be enough but using more would be amazing.

This would increase system requirments though.


I like this, I'm acutally writing an engine right now. This is a large task though. Don't overestimate your ability.

I'm not in highschool yet, but if you got any physics textbooks I recommend reading through them. They're great to have.


Look into WinAPI and DirectX 10. If you want OpenGL instead, look into version 3.0.

(Go for dx11 and/or OGL 4.4 if you want to only support high end cards)


The third thing is I want to give as full control of the character as possible - as few as possible presets, you can move your weapon and body as freely as possible - pretty much like controlling actual muscles in body. Can think of ways to implement it in reasonable ways (not using key kombos for every muscle :D)?
Have you ever looked into virtual reality? (Being serious)


It's really cool someone is sharing the same interest as me, with the exception of not using OpenGL. I dreamed of such an engine when I was younger. I'm really focused on efficiency, I'm purchasing a machine I can serve as a baseline requirement.

I hope you succeed.
Last edited on
Looked into multi-threading... Felt like a chimp :D I've got a lot of learning to do here.

I thought about doing it with WinAPI and DirectX11 (I'm pretty sure it's possible to make a game more or less backward compatible regarding DirectX).

Virtual reality has a couple of big drawbacks:
1) In case of impact in game weapon will bounce off, meanwhile in reality it will keep going...
2) Environment. It does not exist out of the game...
I have an idea though... Full pressure controlled exoskeleton (idea came from here: ) to simulate the effect of environment. It could simulate the weight of weapons, impacts, etc. It would be expensive as **** though to make it right. I suppose it would be possible to make it work if you just hang the person on a rope or something (by the belt, not neck :D). You would still need to deal with the actual gravity (wrong direction most of the time) and feeling of direction (you should be standing, but you can feel you're just hanging...). Staying on the ground with the equipment is not acceptable too - it'd be broken in no time and we couldn't simulate environment... Damn, it's not developed enough yet I think.

The chances of me succeeding are slim, I knew that from the very beginning :D
Anyone who is truly serious in writing a game engine is welcome to join me in the production of my engine... To be honest I'd just like a second opinion on a lot of things but if you understand what you're doing and are able to follow what I have in mind (and contribute yourself) then by all means lets share XD

I've set up basic classes for 2/3D vectors, 2/3D collision polygons, implemented collision detection algorithms, working on 3D texture model classes, started a very primitive launcher base, I've build a wonderful maths library, and recently I've just been redoing the file handling system. This is capable of writing any of the classes into a file which is great for saving object to be loaded into the game...
Also all these are separated out into there own dlls so that if this engine is released I can continue updating it without having to ask people to completely replace everything... Just the new pieces (I plan to release the engine for others to use freely).
belzebubukas wrote:
I want to give as full control of the character as possible - as few as possible presets, you can move your weapon and body as freely as possible

Only just read this bit (sorry), sounds like it'd be an awesome game for the Wii / PS3? Anything with the motion controllers... Or if you're going to go to such lengths on the engine I suppose it's not that much more effort trying to create your own basic physics controller (rather than learning Nintendo/Sony API)?

PS. I'm sure that the demonic lords name has double 'e', beelzebub XD
Last edited on
Don't use DX11. The only reason you should use it is if you need Tessellation.

Even then OpenGL 4 gots that. Use that instead.

sounds like it'd be an awesome game for the Wii / PS3?
By the time it's done those will be outdated.

A single bug with that suit/virus can kill the operator.

Maybe just start from the beginning. Just start small. You should email me, we can talk about it through there.
Last edited on
When you get stuck--as you definitely will, remember this: anything you can explain in english you can program.
I'm going to be pedantic on this and say that actually isn't the case. For example, see the English description of the Halting Problem.
Program something to solve an np problem in p time...
anything you can explain in english you can program.
appears false. If you can prove your statement, you can have a million euros!

My question to the OP (and others in this thread) is why you want to take on such a huge task? Making a game engine like this is difficult and the one you make probably won't be very good, assuming you even finish. There are many good 2D & 3D game engines already out there. It seems a bit re-inventing the wheelish.
Don't use DX11

Why not?

Maybe just start from the beginning. Just start small.

Well, I've already written a little 2d game using c++, so... I want to move on to 3d.

why you want to take on such a huge task?

I am learning and doing the engine at the same time, it's kinda like practice for the theory. I realize I probably won't be able to implement, for example, mesh generation on impact and proper texture placing in those areas, but I want to see how far I can get. It's about the journey. And, in the end, if I succeed, we'll have a ******* awesome engine :D
Good man! I've been advised not to bother building an engine until I've done about 10 simple games and recognised "reusable code" although that's what an engine is and I'm not going to give up and make the past year worthless.

As for DX11, there's only minor problems I can see. DX is for windows only but if you don't want portability this ain't a problem, and specifically DX11 is for windows 7+ only. tBut as you said it's probably going to take a while and I doubt many people will remain on xp for long
I thought that the only barrier to DX11 was that only very new graphics cards supported it, and the only reason that people with winXP wouldn't be able to use it is that if they had a graphics card capable of DX11 they wouldn't be running XP...

I could be wrong, I use OpenGL, though only v3.3 (I'm one of those guys running winXP :D ).
Yeah, also the fact that only new-ish graphics cards support it...
But basically anything after Oct 2009 should've been working on DX11, (and about my previous comment for Win7+, MS release DX11 on Vista-SP2 as well)

I bought my laptop for Christmas 2009 and it came with Intel's HD 3000 integrated chipset... It's crap for graphics but it still supports DX11
Last edited on
I'm sorry if this is horrible but why not use a computer with a webcam, and use the webcam like kinect and if you need to, disassemble a few old kinects (probably $20 (american) each on craigslist) and figure out how to build your own version for computer? Then you have a computer program and control over each limb if you program the device to recognize limbs.
Real question everyone I think should be asking is: Have you ever made a game before?

Its always interesting to see programmers embark in a topic unfamiliar to them as a solo project with this huge idea that they have no idea how to program. As beginning programmers we learn tools from the ground up. Statements --> conditional statements --> procedures --> objects --> generic programming --> API and many other language discrepencies. You can't expect to accomplish chivilary meets virtual reality mechanics without even knowing/having experience implementing basic game structure. Every programming subfield will have you learning about its structure before embarking on real innovative projects.

Facing a bit of reality you should be asking yourself, is this a one man team or a group? do I have or will have all the art assests I will need to make/manipulate all my physics assets. How long will this project take and is it really worth it for my future programming/game programming/resume experience/free time.

Personally I've found that when I'm going to embark upon a project that I have no idea where to begin after serious thought it means that I'm lacking basic knowledge/experience in that field. If I still want to eventually work on that project I will make a list of what I must accomplish in order to realize that project dream.
Last edited on
NNNnndddddon't use DirectX if you can.
Use OpenGL 3.3, and an earlier version of Visual Studio or use MinGW.
This makes earlier PC's also support your game.
VS13 programs won't run on XP as an example.
VS10 programs will.
MinGW programs will.

How will this affect your game?
Less support, less players, less profits.

I don't have a problem with DX but since you and I are indie programmers we might as well just use OpenGL and a cross-platform windowing API like SFML or SDL to maximize our profits.

I hate adding extra dependencies but it's something I feel I'm forced to do.
Woah! Calm down SGH :)
You may be forgetting that the op may not like opengl for his own reasons (if indeed he has reasons for preferring DX) I personally tried learning opengl first as I was aware of its portability and also I've seen a lot fewer errors occur in programs due to opengl as compared to DX. However when I try learning it I find it awful to do for some reason... Lots of it just doesn't make sense to me, like having to create a temporary window with no attributes in order to call a function to create a proper window.
But hey, maybe that's just me XD

All we can do is share our own opinions to guide people and it's up to them on how they choose to go about their work.
Last edited on
SatsumaBenji... Huh?
I never had to create a temporary window.
Use SDL to create an OpenGL context and go on from that point?
This way it's even going to be portable (as Lumpkin stated above).
With SDL2 you can also have multiple windows with different OpenGL contexts.
Well this is just going from a few different tutorials I got completely confused with. Eventually I gave up and rather grudgingly moved to DX and found it amazingly easy and strait forward in comparison... (Well as strait forward as a GAPI can get)
Pages: 12