Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

snk_kid

game engine for a final year project?

This topic is 5475 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Is it a stupid idea to try create a game engine for a final year project considering that i have other modules to do as, i''ve spent most of the summer researching on it and i need to find a scope here what do you think?

Share this post


Link to post
Share on other sites
Advertisement
I assume you are doing this for computer science?

It depends on how much time you have and how much programming experience. A simple 3D engine which loads hand written maps from a text file can be done in a short period, however, it will most likely not get done in a year unless you work really hard. A 3D engine really is a big workload.

If you have a good C++/3D math background, I suggest trying to make a raytracer. Within a few days, you can get something decently working. You can add several nice looking effects. Raytracers also have the bonus of not being theorically SNAFU. In a raytracer, things are quite intuitive to implement, there are no hacks, you are simply reversing the way light naturally works. So in short, if you worked on a raytracer a couple hours every weekend, by the end of the year you would have something awesome and very capable of producing high quality images.



Looking for a serious game project?
www.xgameproject.com

Share this post


Link to post
Share on other sites
Yes i am doing Computer Science, i am a good programmer, and learnt all the maths needed over the summer things like vectors, matrices i know some calculus so i know about partial derivatives to find the tangent plane of a surface and then using cross product to find the normal at a particular point of a surface, i know of the Graphics pipeline, AI, some sounds, OpenGL. I really wanna to do something like this so i can use to help me get a job as a games programmer

Share this post


Link to post
Share on other sites
I thought I''d chime in since I did this for an independent study my last year at college. It is HARD. I''d even programmed a couple of simple games before the project and had a good math and very good programming background. Frankly, if you haven''t done it before it will be a real struggle. It''s not impossible, but I do suggest finding a very understanding and helpful professor to do the project with - at my college at least we had to do that kind of project under a single professor''s supervision and get permission for the particular project from them. If it''s a general project that all students have to do, check the rules because you''ll really need some base code to start with, otherwise you''ll be spending most of your time just creating a framework, and learning how to read an existing model type or designing your own. I ended up with a simple 3D engine that ran at respectable speeds (60 - 150 fps depending on # of models), but it fell rather short of what I wanted to do. I only got that far even, because I started with some NeHe tutorials and worked up from there.

Lastly, if a complete product is important to this final project, go with something you know you can do. If the experience is the important part, a 3D engine isn''t a bad idea - just a hard one.

Hope that helps.

Share this post


Link to post
Share on other sites
It depends on how powerful an engine you want to make. I made a very simple one that turns bitmaps into 3d tile based map. That took less then a week to make. So i don''t see why you couldn''t build engine in year. As long as you keep scope in mind. It all depends on what features you want to include and how complex the engine is. Afterall an isometric or 2d engine would be easier to create then an 3d engine.

-----------------------------------------------------
Writer, Programer, Cook, I''m a Jack of all Trades
Current Design project
Chaos Factor Design Document

Share this post


Link to post
Share on other sites
You remind me of what i was thinking to do for my FYP for my Diploma in Multimedia.

Back in April, we were all wondering what we were going to do for our FYP. At that point, i had very little experience in C++.
Most i could have done in C++ was to make a simeple number guessing game.
My school had taught us Java/gl4java. What we had learnt though was alot less than what i had picked up in my free time through Nehe/GameTutorials. At this point, i was capable of texturing a polygon and displaying it on screen. Our FYP would officially start on July 07 and would end on October 20. That is barely 3 months and 2 weeks. We would be allotted 10hrs a week. The founder of the OpenGL module in our school had quit and therefore we only had a lecturer who had recently picked up OpenGL and had 2 years experience as he claimed. He was going to monitor our project.

I wanted to do a game no matter what. I had 4 friends who assured me that they would be able to help out in the programming. After talking to my assigned lecturer for FYP, i realised that he was not going to be of much help. He didnt play games and didn''t even know what a rpg was. So school help was out.

But i looked at the net and i realised how thankful i am to sites like Nehe and GameTutorials for the wealth of information that they provide.

My experience with game programming was a text based number guessing game which was done in 2-4hrs. My friends all decided in May that we would be doing a RPG. I looked at my experience and what i was capable of at that time and i thought, if could even walk around in a textured box with collission, it would be a miracle. But deep inside i really wanted to make a game and i decided that i would manage somehow. After all, i was not going to be the only programmer.

I was working during the semester break in May - June. During work, i would think about how i was going to implement everything. One day it would be model loading, another day it would be displaying fonts. At the end of the day, i would return home and code till midnight. Collission was my biggest problem and it took 2 weeks to get it working.

By the time my semester started in July, i had in 2 months made a engine capable of loading textured static/animated meshes from a custom file format, polygon level collission against all objects, navigation with a 3rd person perspective.
Prior to this, i had made a textured cube and a text number guessing game, didnt even have a C++ programming book.

At this point, i had only made a gfx engine. Currently i am rushing to finish my project and i ended up being the only programmer.I had chosen to do a game and not just a game engine. I underestimated the complexities of making a rpg and it''s going to be hard to finish it. Ive come a long way from my textured cube days just a few months back, but it was no stroll in the park. I skipped alot of "standard" steps like making Pong, then tetris, then a 2d scroller, then a simple 3d game. If you think you can do it and really want to do it, you will be able to finish it. I would never have been able to do it if it was not for all the talented people online providing free tutorials and free help on forums.

Sometimes i read with amusement how recently some ppl started doubting whether a guy had made a RTS/models/textures all by himself in 3 months using C++/DX. They even started claiming that he had use GameStudio or some other Game making software.

When i think about it, i am happy i decided to go ahead with making a game. On my own free time, i wouldnt even have finished a tetris clone, simply because of all the distractions mainly being all the games there are to play. But with a deadline looming, and something that seemed impossible, i actually pushed myself. Check out the link below for our progress.


Mystique Legacy : Rise of the Forgotten World

Share this post


Link to post
Share on other sites
It can be done, i''ve seen FYP game done (3D.) However it wasn''t anything special, except for the fact that all of the ground work was laid and now making a better game with more resources might be doable. The project I''m thinking of had 4 team members, 1 for sound, 2 for 3D OpenGL stuff, 1 for modelling who shared the work for intro panes with the sound guy. And lots of the work fell on the openGL guys. And they had already all taken a masters course in computer graphics. Still it was a single ship flying around shooting a couple of other ships in space. Not too fancy... but they got an ''A'' cause the scope for even that is huge. Of course standards may have changed by now.

" ''No one has control -- control is just a fantasy. And being human is difficult.'' "

Share this post


Link to post
Share on other sites
The main thing is to only create functionality that you will actually USE. For example, although quaternions are a good tool, if you''re not going to use them in your game then there''s no use in spending the time to code them.

For something like this, you have to first decide what kind of simple game or 3D app you want to make. Then, you code the functionality you need to achieve it. Don''t start making a generic 3D engine and then try to use it to make your game because you will spend a lot of time working on things that you don''t really need. Another example. Don''t spend time developing a fancy terrain generation algorithm until you know if your game is going to be in an outdoor setting.

A friend of mine (just one guy) did a final project when we were undergrads that came out pretty good. It was a first person pac-man game. He had a maze with 4 ghosts running around. The cool part was that he had a 2D overlay of the game world superimposed onto the first person view. But in his case, none of the ghosts have feet, he didn''t have to code any character animations. The "collision detection" he used was also pretty basic since the maze was just stored as a 2D array with different values indicating if there was a wall at that location, a pac-dot, a power pac-dot, etc... Be creative with your ideas. My point is to only spend the time to code the functionality you truely need because you really don''t have infinite amounts of time.

Coding a completely generic 3D engine can be very rewarding and usefull in the future. But since you have a deadline and don''t really have tons of experience, you should decide on what kind of game you want to do first and then code towards that goal.

Hope this helps,
neneboricua

Share this post


Link to post
Share on other sites
Thanks for people response, i been thinking hard i thinking considering i have more exprince with Java because of my uni, considering i have other modules to do aswell, i think an online game of chess would be a good idea, scope is well defined, i can have a database at the backend, i can focus on AI stuff which i find interesting what do you think?

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!