About this blog
Corman spends most of his time with his head buried in code or in a pillow.
Entries in this blog
I have been refining the weather systems some more again and below is a current precipitation forecast from one of my planets. It may look simple in some ways but there is a pile of research behind it a mile high. In the future I may give simplified examples of the rules that describe this system.
Well friday the 13th has come and gone and I have survived quite well. This day out of all dates is one I would have not chosen to schedule a demo presentation and investor meeting on but one of my side contractors did just that. I have to admit my personal stress level was a little high then but it is slowly coming back down and it will soon be well within the normal acceptable range. So with all of the current events I have decided to take a little rest and relaxtion from hardcore research and development and vegetate a bit on vegetation. Thus far the planets have been relatively bare of detail objects on the close ground level and because we need this detail anyway I chose to work on this to keep productive while I take a break from the other brain draining chaotic systems. The current plans have this detail vegetation system to go from weeds, flowers, and other small ground coverage to full trees and forests taking full advantage of the already available climate data. The only real question I have for myself is whether or not I should go the extra step and take soil types into consideration.
It has been some time now since my last journal post and I really should keep this habit going otherwise it will just get lost in the clutter of my mind like so many other things. Now that you all can see that I am still very much alive I should tell you what I have been up to. For the lack of a better saying I have been stuck in the tool shed. I have working on so many things for a long time that I really had to get down to fixing and updating our tools. For like the past two months there have been some very obvious bugs in the tools that we have just been working around but it finally got to the point where these bugs were preventing any real work from being done. So I been cracking the old whip on myself and burning the midnight oil to hammer out these problems and sharpen up all the tools again. There is really nothing much more to report on this other than I have been very physically and mentally exaushted lately. On another note I am thinking of getting back into robotics once I feel like I have enough freely available funds to do so comfortably.
Well I seem to find myself slipping on posting anything or keeping up with the whole social thing time and time again. Things change, friends come and go, and personal interests seem to wax an wane. Right now I do not know how active I will stay here but I will continue to support the community and gamedev.net itself. I am looking at giving this whole social thing another go but I do not know to what degree and where and if I will still keep an up to date blog. All I know is my day job keeps me busy and my hobby focus have seemed to lean more towards the art aspect of life, still with a technical focus, than the raw code I have been so used to doing. So this is not really a goodbye but more so a quick drive-by update as there are changes brewing and I will still pop in here from time to time.
I have been visiting the GameDev.net community for a long time now and I have finaly decided to show my support by becoming a GDNet+ member. It is almost hard to believe that I have been lurking on this site for almost 4 solid years now with every minute being worth it. I have been known to have this strange obsession of just observing things and I very guilty of it here. It has always been exciting to see the next generation of developers learn and grow by trial and error and the experienced teach and guide by example. Because I know that there are others out there like me I chose to use my new found privileges to start this journal. Since most of my time is spent with my head either in code or in a pillow hopefully I can find reasonable time to write here. So who am I?
My name is Shea Street (aka Corman) and currently I am a co-founder and programmer with Tantrum Games. I have been programming now for about 16 years and I am entirely self taught. I still do contract work and provide consulting on the side but my core work is here with Tantrum Games.
You can check out articles on some of my work in the following books:
1. "Keeping a Massively Multiplayer Online Game Massive, Online, and Persistent" - Game Programming Gems 5
2. "Massively Multiplayer Games Using a Distributed Services Approach" - Massively Multiplayer Game Development 2
My article submission has been selected for the next Game Programming Gems 8... AGAIN*!
* Yeah, yeah, I know you heard this all before and I bet you find yourself asking "Didn't this happen before? Where is his last announced article for that Game Programming Gems 7?". Well to make a long story short it wasn't just 7 I was going to be in but 6 as well. With 6 I had to pull my work because of a potential conflict with a client at that time and was just safer to drop it than get into any legal battles. Now 7 was harder to deal with for the pure fact I had to withdraw my paper because my father was just then hit with cancer. I would have liked to said I could of handled all the pressure and kept on working but I am only human. There was a lot of rough times ahead but I dropped just about everything to be with my father as much as possible. No amount of professional glory would be worth the time left that I spent with him through all his trials. I could stake my life on the fact that I became closer to him in that short span than I ever have over all my years and it saddens me that it took me even that long. Even though it has been many months since he passed away early in this year I still can't help but cry as I write this. For the man that helped make me who I am... this book is for you dad.
My article submission has been selected to be included in the upcoming Game Programming Gems 7!
What exactly is "red matter" in the Star Trek movie?
I believe this might be some miss guided, artistic license, play on quantum chromodynamics and the strong force. There is what is known as color charge that is formulated to explain quark confinement and the residual of this why protons/neutrons can bind together to form larger groupings. The reason why it is called "color charge" is because it has three aspects so the primary colors red, green, and blue were chosen even though it has nothing to do with color. Gluons (what "glues" it all together) only come in "color" pairs of a color/anticolor. So this "Red Matter" can't be a Gluon but it can still leave the possibility of it being an exotic form of Quark matter. When Quarks combine to form say a Proton (two Up Quarks and a Down Quark) the Proton is "color" neutral since each Quark is a different color. But these Quarks are constantly changing color by exchanging Gluons. The possibility is that this "Red Matter" is some large mass of singularly "colored" Quarks of the Red charge. Of course this is by name only and by some miss guided, artistic license, running off a bit too far and made it ACTUALLY red. Being all the same color charge they would want to repel very strongly and explode. But even then they would start to exchange Gluons and change colors and color confinement would kick in. Because of this and the explosion in progress it becomes more energetically favorable for a new quark/anti-quark pair to spontaneously appear out of the vacuum. One would now have possibly a runaway chain reaction of mass/energy in a relatively small region warping space and time into a black hole. But of course this is just idle speculation on a movie plot device that wasn't talked about more than its color and that it makes black holes.
Me and my associates submissions are in so wish us luck!
It has been quite a while since the last time I made an update so I guess I have some catching up to do. Last I left off I was having back problems and going through physical therapy. Since then I have finished all of my treatments and my back is doing verry well now. I have included a picture below of the traction machine I was put on daily to help increase the spacing of my vertebrae to stop the nerve pinching and pains. Shortly after going through all that I started getting really sick and I was not getting any better. After many tests it was discovered that I have become diabetic. This came as a no real surprise since diabetes runs very strong in my extended family. The good new is that I do not need to take insulin and can control this by diet alone at this point. What I really like about this is that in the past 2 months alone by cutting out the carbs I have lost nearly 30 pounds. But just when I thought I was done with any possible problems I started having serious pains in my left leg. Over a short period of days I had a vein about the size of my pinky finger sticking out of my leg running its whole length. I had developed a very bad varicose vein. So after seeing a specialist and having many ultrasounds it was decided that I needed surgery. So last Tuesday I underwent a procedure called endovenous laser ablation. Besides being sore and having the typical after pains of surgery I am doing well now. Hopefully this will be that last of my medical issues for a long time. On the lighter side of things work is going well and I will be flying out to Denver tomorrow on business. I have also included below a picture someone made for me based on the last photograph of myself that I had posted. It feels good to be back on GDNet again.
The DRS traction machine:
My very own stamp:
I have always been a perfectionist and shy about my work always hording any details about it until I believed it was done or due. Now that I have a journal and an audience I am going to have to work on this quirk as well as a few others. Below is a brief glimpse of one of the things I am working on. The image is a collage of artificialy colored outputs from one of our new experimental tools for planet creation and management. These outputs and others are compiled to form the base data used for our world engine. This data includes but is not limited to altitudes, climates, and yearly average temperature, precipitation, and cloud coverage. From all of this we derive our land coverage classifications used by the world engine for procedural reconstuction and detail for rendering. At this time this is all I can share on this but the details will show up here as I am able to release them.
Altitude, Climate, Temperature, and Precipitation:
*This programmer art was inspired by HopeDagger's good idea. Have a great Christmas and may your holidays be festive and safe.
I am usually not an attention whore but this view count only happens once and I wanted to celebrate with everyone here who made these numbers possible.
I probably should have posted this some time ago but that whole trying out a second job ended out being a bust. The exact reasons I was given for them letting me go was that they just didn't see it working out and no amount of me questioning would my boss expand on that. It came rather much as a shock to me because my reviews up to then were rather good and encouraging. I was not the only one surprised as it seemed no one else knew of me being let go until I was packing up my things to leave. I guess with such a small company they have to be more picky and make sure their pegs fit more snuggly into their respective holes when you have little wiggle room to work with having such a small staff. In the end I guess this was to be expected since I was hired through a head hunter and was on a trial basis to begin with them having to pay the finders fee if they decided to keep me. I guess it wasn't all that blinding since just before this happened another worker who I became reasonable friends with was let go as well just before his trial period was up as well. I can't really pin point who was more at fault here in this whole scenario but I do know I will make a learning experience out of this and keep on moving forward working that much harder.
Wow, this past holiday weekend was a real hoot! It all started off friday night when I was invited to go out to dinner with my parents along with one of my father's friends from work and his wife. Me being the type of person who would never turn down a chance for a free steak meal I eagerly accepted their offer and joined them. After we got seated and served our drinks my father and his friend got to talking about the car show they were going to go to that Saturday. Since I was never truely a diehard car fanatic I had totaly forgoten all about it until then. My brother is the guy that is more into those sort of things and is usually the one who goes with them to these shows. But he wouldn't be able to make it this year because he was already going to be bussy moving into his new apartment with his girlfriend that day. This meant that there was going to be an extra seat open and up for grabs. I don't know if it was a personal quick change of character or the Texas sized margarita talking but I asked if I could go in his place. Almost at once everyone at the table stopped eating or drinking and stared at me. I justified it to them as that I needed a much needed break from work and that I needed to start walking on my leg again because of my surgery. You can say there was a lot of giggling after I tried to explain myself. Well they said that I could go if I really wanted to. I was told I had to be up by 5:00 am to be ready to go and I agreed to it. Yup, it was the margarita making the decisions here. Good thing too being such the night owl that I am if it wasn't for that drink I would have never been able to synchronize my schedule to be up that early and make it through the whole day. All in all the Auburn car show and auction was worth every bit of pain from walking all day and putting up with my father and his band of goofy friends. In the end I do not know if it was the show itself or the ride in the van there and back that was the most fun. Will all my father's friends from work in that van it was a total gut busting laugh riot for the 4 hours we were driving. I really enjoyed the whole experience and believe I would go again given the chance. I got a lot of pictures from that day that I still need to sort through but I have included some below. Over the next day I got in touch with some old friends that I haven't heard from in forever through one of those social networking sites. We ended up all getting together on Monday for a cookout and a couple of beers. It was amazing how we all just picked right back up just like we never lost contact even after not seeing each other for over 7 years. I forgot about my camera that day but several other people were taking pictures that hopefully I can get a copy or two from.
Our driver for the day:
Me on a Segway:
My father and myself:
Corman's best of show:
I know it has been some time since my last update but there are some good reasons for this. First on the list is that I did eventually pull my book article so I could hopefully have a more polished and completed one to be published later. But other than that the biggest thing to happen this year is my migration to a new job at the very fun and cool company named Play Mechanix. For the few of you out there that still feed on coin-op arcade games they are widely known for their series Big Buck Hunter. I have now been here for a week now and everything is going great. There is a lot of exciting things forming on the horizon but I can't even begin to talk about these yet. Like usual I have included some pictures below for your enjoyment.
The flag we work under:
Only a fraction of the countless many arcade machines:
My boss and lead programmer Mark walking in:
Scott hard at work on new features in the core engine:
Me and Gary next to the crown jewel:
The data I have put up until here has shown that my test planet has been having a good growing season. Because I know people would perfer more images I have included a detailed satellite image of the planet during this nice weather. I am also tired of this planet not having a name other than being called test or by its designation P2X-381. This planet may never make it into any final project but I do believe it deserves a proper name so any ideas or suggestions are welcome.
Click for larger image
Most of my programs always start out with a console in one form or another to monitor data and to edit and update variables while the program is running and is usually in some sort of shell window or the program itself. This is all fine and good but I felt that it was very limiting to me. I could of just left things internal to the programs and do my own gui to edit things and such but this can be such a development and maintenance nightmare just for tweaking and debugging. Move over consoles since I would like to introduce panels. My idea comes right from the realm of cPanel and Plesk for website maintenance. I now included a small library into my projects that puts a small HTTP server in my programs that now gives me a nice web interface for all my data, options, and commands. It is simple and secure but gives me so much more than my old consoles could ever do. Not only is is good locally but since all of my clients are remote I can now edit, tweak, monitor, and debug a program live while on the phone with them as well as making reports that much easier. Right now for everything it sits at around only about 80k of memory usage total. Here is a link to a dump of my Debug Control Panel as it would look if you connected to a program. Options and files have been renamed or removed to protect the innocent. Feel free to ask any questions you many have.
It has always amazed me at how much effort it really takes to get started again at the start of a new year when nothing truely has changed other than the rolling over of the date. So here I am full steam again with my contracted work and all that fun research and development here at Tantrum Games that everyone here has come to love. The close up terrain detailing system is in the process of getting a makeover making the finer details of Protomajor even that more interesting. Usually at this detail level some sort of noise is just added to the heightmap and textures are then blended based on different weighting rules but we are taking the step towards the use of prototextures. With this technique the textures control the fine details versus the previous other way around. Prototextures are still like regular detail textures but with added embedded microgeometry. This system still uses weights but the microgeometry determines how the textures are blended plus the added detail to the final terrain shape. I hope to make screenshots availabe here later. On another note I have always been interested in old world astronomy and nautical equiment such as astrolabes, sextants, telescopes, and globes and I have been on the search for some time for a "globe" that is a Gnomonic projection on a cube. If someone finds one or can point me to were I can acquire a finely crafted one a reward may become available.
I am sorry to let everyone know that I was rushed to the Emergency Room late last Sunday when my back gave out and I fell to the ground with major pain. Between the pain and drugs I am having a hard time understanding what is going on. Because of this I am currently staying with some family as they help me move around as well as take care of my apointments and medications for me. I just got back from the specialist and I am going to have to go back to hospital again to get an MRI to see what is going on. From what I can gather they believe I may have a herniated disk in my spine. I will post again when I know more and when the pain killers do not cloud my mind so much.
"Extra ball! Extra ball has been lit." is sadly what popped into my mind right after I wrote that topic for this very journal post. I guess I just played way to much of The Who's Tommy pinball in the past for that tune to still be stuck in my head. But now that I have got myself sidetracked a bit I am going to share some of my miscellaneous musings here before getting back to the point of this post that I had in the first place. Being a programmer myself I am quite used to the typical low quality "programmer art" we commonly do but I still love to draw anyways. So recently with my projects' compile times becoming longer and longer I am finding myself filling this usually wasted time sketching and doing art more and more. Below are just a few samples of what I have done lately while waiting for the usual ding from my speakers telling me that a build is done. I hope you like them but I really should get back on track here since we all know you are only here for my talks on development stuff anyway. Well it is about that time again to start thinking about my next book article submission. For those who have read my works listed in the header above I would like to get some feed back and ideas of what you thought so far. This is going to help me improve the quality of my writting style as well as give me some ideas on what to cover next. All ideas and suggestions are welcome currently even if I already have a good idea of what I want to talk about. Even if you have not read my articles I am sure you can get an idea what they are about so feel free to post your comments. This will be an on going process that may span several journal entries. I want to know your thoughts and please keep them coming.
A picture of some anonymous girl:
A drooling monster from my dreams:
Please notice that this journal entry has been edited since its orginal posting.
I have always had the curious scientist like mind from a young age as my parents remind from time to time and I remember it too. I had glorious dreams of becoming a famous inventor or physicists some day. Then came computers and video games and my goals changed. Instead of trying to figure out the real world I would create my own that had their own rules but mimicked the real one. You can see many examples of this fact all through my journal entries here. But I still go back to my armchair mathimatian and physicists roots from time to time and muse around. Even if what I come up with is not real it can still be used for some interesting aspect or even as a good plot device for a story. But last night in a eurka moment involving a bathroom incident like Doc Brown had I realized that one of my current musings could actually meen something. I will evolve my ideas and findings here over time by starting with known values and working from there. This journal entry may end up showing that etheir I am on to something or that I am just dangerous with math but I will let you decide.
For some time now I have been obsessed with the above equation that I found searching the web one day. I became fixated on this equation not only because the units worked out but because I felt it described matter as a 3D volume of energy among other interesting things. The site that I found this at also has a lot of interesting views on space and time even if it is psuedo physics and in the end turns out to be wrong. So I wanted to know if I could derive and explain this equation or something close by using already known values and equations.
This brings us to a similar looking and very familiar equation (the above mass equation) with the reduced Planck Constant instead of just the orginal Planck Constant by deriving it.
So given Einstein's equation:
And my derived equation:
So with this:
Since I am doing this just for my own amusment and nothing else I am going to be making some assumptions here. I am going to pretend for now my equation stands on its own, losses meaning and reason if reduced, and actually has some deep secret that I need to find. From what it seems my equation is the Celsius to Einstein's Fahrenheit scale but a little bit more complicated than that. If this is real I believe that this is something very profoundly amazing. I think one equation is for particles and one for waves. Just like all the Planck units and equations show, this is telling us the limit where the particle and wave nature of mater is equivalent and indistinguishable from each other. I am believing if this is true that our current systems does not take into account for two types of mass and energy (two different but related mass and energy types for the particle and wave structures of matter). Now for different mass values in increments of one Planck Mass (the smallest mass increment that I will be using and treating as indivisible) the equations do not equal each other anymore and need a conversion factor. Now lets look at some ratios for different mass values to see what is going on.
The ratio is:
Expressed below as:
Looking at the above examples the ratios end up being:
So with this:
I gather from this that not only does light have a particle/wave duality but matter as well. I also believe from this we can see matter and energy come in very discreet amounts. This leads me to believe that space and time must also do so. Besides all of this I have more equations and ideas that I will continue to develope as I go along. I will continue to work on this journal entry little by little to help clear things up. Questions, comments, and suggestions are welcome as usual.
Several people have made their interest known that they wanted to know more information on how my planet creator generates its ecological data. The math and equations behind all of this is very indepth and I am unable to share them at this time but I will go over some simplified ideas to help figure the general rules. The focus here will be on the calculation of the different biomes that are the major regional biological communities, such as a desert or forest, defined mostly by their dominant forms of plant life and prevailing climates. These climates consist of their temperature, precipitation, and wind conditions but for our goals we only need the temperature and precipitation. Using these two pieces of information and the simplified chart below you can predict what biome a region may have but first we need figure out this information. Temperature is very closely tied with latitude and altitude and a general rule of thumb is that temperature drops 3 degrees Fahrenheit for every 1,000 feet rise in altitude from sea level. This temperature change is what allows different biomes to be in the same region because every 1,000 foot rise you will have a similar biome that you would find for every 600 miles traveled towards a pole from the equator. Precipitation is the wetness of an area and finding it out is a little more complicated involing temperature, altitude, geological boundaries, and convection zones. Since I cannot cover this now a simple gradient can be used. This gradient starts at the equator with maximum precipitation and moves towards the poles decreasing with distance and altitude like our previous temperature map. Now you can find out the biomes with your temperature, precipitation, and the chart below. Hopefully someone will find this information useful and if so drop me a line. Have a happy and safe new year.
Simplified Biome Chart:
With it being almost time for me to break a bit for the holidays I had to put a little extra time in at work. We had a hard milestone to hit to show some demos to our investors which meant some serious crunch time. Below are some aftermath pictures of my office and the company breakroom when everything was all said and done.
My fully equiped office:
This is where I post from:
The breakroom is scary:
Many bad habits: