So I've been doing some soul searching and trying to determine what to teach myself in programming relating to graphics. I learned a bit about GLUT (an open GL library not really used much these days) and rather than learning older technology I am going to work on understand HTML5, javascript, and WebGL. I hope to put something together that runs in a browser (probably Chrome, upgrade if you haven't yet) by the end of the semester.
To this end I am learning about an interesting library called THREE.js by one mr.doob. He has been instrumental in getting several chrome experiments up and running and I feel that the library is approachable as the novice I am. The cool thing would be that I could share whatever I make on the internet, so hopefully you all can experience it too. Thanks for reading as always.
Hex Wars (name may change later) is an attempt to make a family friendly FPS/RTS online game. The idea is to have a game that plays something like a strategy board game with the players taking the role of the pieces.
22 February, 2013
12 February, 2013
The power in WebGl
I recently stumbled upon a pretty amazing demo showing just what can be done with javascript and Webgl. You can check it out at https://developer.mozilla.org/en-US/demos/detail/bananabread . Basically they took a full game engine written in C++ and OpenGL and ported it to javascript and webgl. It's open source, so I will be able to study it out and get a good idea of where I could go to start my own game later on.
Labels:
Apoid,
apoidgames,
Brift,
game,
gamedev,
Hexwars,
javascript,
WebGL
04 January, 2013
Reality Check
I'm coming to the realization yet again that this is no small project that I have undertaken. I recently had a few good discussions with people on Google+ about game making, and here is what one +Robert Mitchell, who has some experience in the game industry, had to say
"The fact is that the level of competition for good game dev gigs has never been higher. And the reward:risk isn't as good as other sectors unless you offset with an obsession about games in the first place. The likes of EA, for instance, has a tiny fraction of a percent hiring rate for applicants to any given job offer made.
Even then, lucking out with stable employment in this field is just like netting a pink winged unicorn that tastes like chocolate bacon."
Also
"The fact is that the level of competition for good game dev gigs has never been higher. And the reward:risk isn't as good as other sectors unless you offset with an obsession about games in the first place. The likes of EA, for instance, has a tiny fraction of a percent hiring rate for applicants to any given job offer made.
Even then, lucking out with stable employment in this field is just like netting a pink winged unicorn that tastes like chocolate bacon."
Also
"But again, if you find yourself awake at night thinking about how the latest games you played could be improved - and not just from the addition of a new character - and or find yourself in deep thought about the emergent properties found in the interaction of systems around you. Or if you enjoy reading game theory papers talking about conflict and cooperation and Monty Hall's three door game makes obvious sense to you and you don't mind the years it might take to fully pivot over... Game development is incredibly rewarding, IF and ONLY IF you have the love of the craft... because otherwise, this industry will devour your soul and leave you a grumpy, sour mess. I've seen it happen and almost always to good people who just wanted a stable, straight forward job."
I've given a lot of thought to his comments, and the cold hard reality is that I will have to put the needs of my family first and foremost. I have also come to realize that I am not passionate about making games in general, rather I am passionate about making a game that I think I would enjoy playing. I probably won't be able to get the resources to make this particular game as it is so ambitious. I do plan on continuing my education and finishing my master's degree, and I'll find out how much I can get done before that period of my life is finished. I might end up doing a thesis as opposed to a project, but I still have a long time before I have to make that choice. To any aspiring game developers who may be reading this, I recommend learning as much as you can as early as you can. Trying to learn all of this in my mid 30's has been quite tiring.
10 December, 2012
Firefall review
So I recently had the opportunity to try out Firefall and I must say that for a free to play game it was very impressive. I liked the ability to swap out battleframes, which is very similar to the idea I have for switching roles. There was a definite PvE (player vs environment) push, with PvP(player vs player) being almost an afterthought. The PvP matches were basically 5v5 team deathmatch style with the possibility of 10 v 10 on different maps, but there is not the persistent open world pvp I was kind of hoping would be there. There are a kind of simple tower defense type situation where you and your squad defend a thumper (a type of mining device) from wave after wave of overgrown bugs and other mutated wildlife, which provides a challenge of it's own. Finally there is the Chosen, who are evil incarnate NPC (non player characters) who come to take over watchtowers and generally make life difficult. Some of them are quite powerful, leaving me roasted a many a time as I tend to walk around alone. Even so I was able to take out dozens of them single handed, and I'm sure that even with improved AI players will eventually figure out way's to kill them easily.
As for what I would hope to see, I would say that player controlled chosen would make the game very interesting. That way large scale open world pvp could be realized, though that also introduces some problems as to how would tech and other items work. That and if you have the "good" side and the "bad" side developers often will unconsciously favor the good side.
As for what I would hope to see, I would say that player controlled chosen would make the game very interesting. That way large scale open world pvp could be realized, though that also introduces some problems as to how would tech and other items work. That and if you have the "good" side and the "bad" side developers often will unconsciously favor the good side.
Labels:
Apoid,
apoidgames,
Brift,
Firefall,
game,
game design,
game development,
gamedev,
Hexwars,
review
Product vs Service
As I continue to study the art of game creation I came across an interesting and thought provoking concept, that we are moving away from games as a product to games as a service. I certainly would say that I hope to create a system for the latter, but I suppose I should explain the differences before I go into that.
In the past games were required to be in a complete state (meaning completely coded, put into a package to be sold in retail outlets, etc..) before they got to the consumer. Often once it had shipped the developers would no longer have anything to do with the product other than wait for one of two outcomes, success and the opportunity to make more games or rejection by the masses which usually meant the end of said game development company. With every "product" shipped there was a definite gamble, and since publishers who were funding the product from the inception and who also are very concerned with making a profit were pretty much in control, any failure to produce said profit was a death sentence to any game developer who didn't perform well.
Now switch to games as a service. MMO's are a great example of how this mindset works. A game is created and then costumers are brought in before the game is complete (usually in beta) and they give feedback as to what they would like to see in the game as a finished product. The thing is that the game is never really finished, as things keep getting added on. Costumers also don't do the one time purchase as in the other model, rather they pay on an ongoing basis either through subscription costs or via micro-transactions. The game developer and the consumer then have this continual relationship where there are feedback loops and opportunities for creating an experience that players enjoy and game developers are happy to provide. It also means that game developers are able to work with a product long after it has reached the hands of the consumer.
I think the second option has a better chance of creating communities around a game, and also gives developers a chance to polish and work out games to become the very best that they can. I look forward to the change in paradigms that is already occurring.
In the past games were required to be in a complete state (meaning completely coded, put into a package to be sold in retail outlets, etc..) before they got to the consumer. Often once it had shipped the developers would no longer have anything to do with the product other than wait for one of two outcomes, success and the opportunity to make more games or rejection by the masses which usually meant the end of said game development company. With every "product" shipped there was a definite gamble, and since publishers who were funding the product from the inception and who also are very concerned with making a profit were pretty much in control, any failure to produce said profit was a death sentence to any game developer who didn't perform well.
Now switch to games as a service. MMO's are a great example of how this mindset works. A game is created and then costumers are brought in before the game is complete (usually in beta) and they give feedback as to what they would like to see in the game as a finished product. The thing is that the game is never really finished, as things keep getting added on. Costumers also don't do the one time purchase as in the other model, rather they pay on an ongoing basis either through subscription costs or via micro-transactions. The game developer and the consumer then have this continual relationship where there are feedback loops and opportunities for creating an experience that players enjoy and game developers are happy to provide. It also means that game developers are able to work with a product long after it has reached the hands of the consumer.
I think the second option has a better chance of creating communities around a game, and also gives developers a chance to polish and work out games to become the very best that they can. I look forward to the change in paradigms that is already occurring.
Labels:
Apoid,
apoidgames,
Brift,
game,
game design,
game development,
gamedev,
Hexwars
15 November, 2012
Marching Cubes
As part of my algorithms class I need to present an algorithm that I have looked into and analyzed. For this assignment I chose the marching cube algorithm. It's a nice straightforward algorithm that was designed to display 3d volumetric information and it was originally presented in 1987. Anyway I am learning quite a bit about voxels through this, and apparently this algorithm or something very similar is commonly used in place of height maps for creating the base landscape in many games. The reason why is that it make negative spaces like caves and overhangs possible.
So a quick explanation is that you take a large set of cubes put into a 3d array like 512x512x512. Then going through each of the smaller cubes you determine whether one of the 8 corners is either inside or outside of your volume. The program then repeat this for all of the remaining cubes keeping track of which ones are inside and which ones are outside and drawing triangles based on the intersections. In the end you have a rough 3d representation of the volume being measured.
Now I need to go and write a 20 page paper on this, and I find myself wondering what fillers to use to stretch this out. Wish me luck.
So a quick explanation is that you take a large set of cubes put into a 3d array like 512x512x512. Then going through each of the smaller cubes you determine whether one of the 8 corners is either inside or outside of your volume. The program then repeat this for all of the remaining cubes keeping track of which ones are inside and which ones are outside and drawing triangles based on the intersections. In the end you have a rough 3d representation of the volume being measured.
Now I need to go and write a 20 page paper on this, and I find myself wondering what fillers to use to stretch this out. Wish me luck.
Labels:
Apoid,
Apoidea,
apoidgames,
Brift,
game,
game design,
gamedev,
Hex wars
10 November, 2012
What I'm learning about programming
Ok I know I haven't posted for a while, but that is mainly because I haven't done a whole lot as far as this game is concerned. School again is sucking up lots of time. I am having what I think is an important understanding of something though.
Programming ,indeed all of computer science, is all about tackling problems and learning to teach oneself in order to tackle ever increasingly difficult problems.
I think that is why when I look at jobs in the world of gaming they always have the requirement of having shipped at least one title. That is because an appropriate candidate will have proven that faced with problems they did not give up and run away, rather they figured out a way to make it work. In my college experience I have railed at how it seems that I must teach myself, yet I think that is the actual goal of studying computer science and programming, to develop in students the ability to self teach and problem solve without the assistance of someone else. Higher order thinking skills are really hard to pick up though, which is why when someone is able to show that yes they did have problems that were hard and yes they did solve them even when it wasn't fun that is says something about that person.
Which is why I need to kick myself in the rear and get to work overcoming some of these obstacles I keep running into. I also need to remember that I can learn it little by little, step by step. So now back to getting my homework done.
Programming ,indeed all of computer science, is all about tackling problems and learning to teach oneself in order to tackle ever increasingly difficult problems.
I think that is why when I look at jobs in the world of gaming they always have the requirement of having shipped at least one title. That is because an appropriate candidate will have proven that faced with problems they did not give up and run away, rather they figured out a way to make it work. In my college experience I have railed at how it seems that I must teach myself, yet I think that is the actual goal of studying computer science and programming, to develop in students the ability to self teach and problem solve without the assistance of someone else. Higher order thinking skills are really hard to pick up though, which is why when someone is able to show that yes they did have problems that were hard and yes they did solve them even when it wasn't fun that is says something about that person.
Which is why I need to kick myself in the rear and get to work overcoming some of these obstacles I keep running into. I also need to remember that I can learn it little by little, step by step. So now back to getting my homework done.
Labels:
Apoid,
apoidgames,
Brift,
game programming,
Hexwars,
programming
Subscribe to:
Posts (Atom)