I presume this is the landing page of my blog. I am showcasing a project on wind energy. After that i have given links to a large set of projects with comments on each project and how it would be useful to you.
Wind mills have blades which rotate clockwise or anti-clockwise based on mouse input(menus). If you choose no wind the rotors stop turning. Electricity generated lights up the villages and homes can be seen glowing.
Wind mills have blades which rotate clockwise or anti-clockwise based on mouse input(menus). If you choose no wind the rotors stop turning. Electricity generated lights up the villages and homes can be seen glowing.
Snaps:
Here is the source for this project.
I have made an attempt to encourage bright students of CS branch of VTU to venture into a project solo. If you have not yet enrolled for CS branch but would do so in future or not yet into sixth semester where you will need to demonstrate your skills, consider yourself lucky to have visited this blog. Here you can learn a lot and I hope you have a lot of time for that. Bookmark this blog and I promise you will not return empty handed.
To repeat what I mentioned elsewhere, these student projects run in eclipse under Ubuntu platform. I am not sure that they will run in windows(may be a little tweaking here and there is needed). The files have been made public, so anyone on the net can find them and download. It is heartening to see the number of page views of this blog increasing tremendously. It gives me a lot of satisfaction to impact so many budding developers. My goal is to inspire the student community to take interest in their subjects and inspire confidence, they too can do projects on their own. Take some interest in having a look at the code of all these projects. I call it a cursory code inspection. I know you cannot understand all that you read. I know its an awful experience similar to reading greek and latin. But it gives you experience of going through other people's code and appreciating the work of art. With practical experience and after considerable coding yourself you will outgrow this blog I am sure.
Once you click and open in a new tab the source link of each project, you can have a look at the code. Don't postpone code inspection. If you download and keep for future reference you will never have the time to read. I am observing several sites have sprung up with a lot of projects and some language and sentences of mine. I cannot object to that but they cannot take out my passion towards the subject nor my ability to write on it.
To repeat what I mentioned elsewhere, these student projects run in eclipse under Ubuntu platform. I am not sure that they will run in windows(may be a little tweaking here and there is needed). The files have been made public, so anyone on the net can find them and download. It is heartening to see the number of page views of this blog increasing tremendously. It gives me a lot of satisfaction to impact so many budding developers. My goal is to inspire the student community to take interest in their subjects and inspire confidence, they too can do projects on their own. Take some interest in having a look at the code of all these projects. I call it a cursory code inspection. I know you cannot understand all that you read. I know its an awful experience similar to reading greek and latin. But it gives you experience of going through other people's code and appreciating the work of art. With practical experience and after considerable coding yourself you will outgrow this blog I am sure.
Once you click and open in a new tab the source link of each project, you can have a look at the code. Don't postpone code inspection. If you download and keep for future reference you will never have the time to read. I am observing several sites have sprung up with a lot of projects and some language and sentences of mine. I cannot object to that but they cannot take out my passion towards the subject nor my ability to write on it.
Only 1-3% of these projects are my own. Several of them students own creation and many downloaded from elsewhere on the internet. Look at all the posts with a view to create something of your own.
You can borrow pieces of code from a project and use it in your own. I call it code transplantation. Most of these projects are non-object oriented and don't support code reuse. You need to be a surgeon(much higher difficulty than reuse of OO code). You need to know where to paste a particular piece of code(copy), what to modify and what to delete(cut). Only if you attain proficiency in understanding the code would you be able to do these things. The flowing fountain and the particles project have objects moving in a parabolic path. Shadow fun has a light source in simple harmonic motion(It is a sine wave) and has code which draws shadows. Robot movement has code which can be used to walk a human model. Many of the projects have code to use the mouse like the trackball to rotate the scene. Water ripples has code which draws waves on a water surface. Ray tracing has code which maps a scene image onto the sphere as a texture. Multi mirror has code to get mirror images of scenes. I have come across texture mapping in several of the projects. Fractals has breathtaking views of higher dimensional objects such as the mandelbrot set.
There are several projects on cars. You have the tata sumo type of car. The formula one racer type of car. An ambassador type of car. Only a top view(2D) type of car. You can use code from such projects. Believe me you, will get real advantage of reusing this code. In Jumping Dino there is code to update the orientation of the car or any object. It is simple trigonometry. There is code to draw trees in many projects esp the one on sea view. A realistic tree can be drawn using fractal techniques. I have written this JOGL program to use L-System for drawing a tree. Hope to make several changes to make it look realistic. There is code to draw a bus in one of the projects. The project on pac man has interesting code to move the devil which attacks the pac-man or runs away from it. The tic tac toe game played against the computer has code to make a move(best possible). I wanted something similar for the chess game. If someone could work out the code for making a move in the chess game it would be really great. Even some code to solve a given Rubik cube could be a really great achievement. You could get ready made code for such tasks and probably integrate into your project to draw the display.
Many of the techniques that are implemented in these projects are not that easy to understand.
Yes, Just like how complex mathematics is difficult to understand even programs making use of such mathematics are difficult to understand. To try and explain the water waves project has taken me to mathematics of wave equations.
So starting from my next post I would hopefully delve into specific programming techniques and insights that are shared by professional animators. Someday I wish I would write a game engine. Learning DirectX... Maya... and many more things are in the pipeline(dreaming). Its been a long time since I updated this page. My new goals are to learn to make use of existing game engines and not to reinvent the wheel. Also top on the wish list is learning to use Unity to make games. I have now got fair bit of exposure to Blender 3D.
I often advise students not to waste time playing video games. I appeal to the sadist(sic) in everyone and say them to write games that other people would waste their time on, so that you can steal a march. After all what happens when you play a game is just change in contents of bits in the memory. Nothing productive would ever come out of playing a video game. Read my personal experience of playing video games in the post if you have time (Indian audience would appreciate this more):- One rupee taught me a very big lesson.