jump to navigation

Star Destroyer Part I – Geometry reference and setup April 27, 2009

Posted by jhuculak in Art.
Tags: , , , ,
add a comment
Stardestroyer Top

Stardestroyer Top

I love Star Wars. Return of the Jedi is the first movie I remember watching, Star Wars novels got me reading science fiction, and Star Wars model kits were the first ones I built. I still remember the hours it took me to put together my AT-ST walker and how daunting the Millenium Falcon was! Not only did you have to spend hours to put the model together, you also had to spend hours painting it if you wanted it to look anything like the real ship! On top of that there wasn’t really any painting reference available. Those were some fun times and I thought I would try and relive a little of that digitally.

Please consider this a complete newbie tutorial as I’m fumbling my way through modeling myself. Today is all about setting up the modeling environment.

Software: Silo 1.4 + Firefox + GIMP. I’m using Silo 1.4 to start the tutorial because I had to use my laptop to start the modeling process and Silo 2.0 doesn’t really run on my laptop (selection issues).

Stardestroyer Side

Stardestroyer Side

Plan (rough outline, subject to change)
Star Destroyer Part I – Geometry reference and setup
Star Destroyer Part II – Geometry block in
Star Destroyer Part III – Details and UV unwrapping
Star Destroyer Part IV – Texturing

stardestroyer_front

Stardestroyer Front

Although I’m not an artist myself I read lots of tutorials and work with lots of artists. The first step is ALWAYS finding reference images. The better your reference images or concepts, the better your chance at succeeding. Take as much time as you need for this part of the process. Google images makes this incredibly easy! Simply type in Stardestroyer and you get lots of examples to draw on. I found a top/side/front/rear gif and chopped it up into a unique image per view using GIMP.

stardestroyer_back

Stardestroyer Back

These kinds orthographic drawings are the perfect images to start your modeling. Time to fire up Silo.

Although I’m working on a small laptop, I still switched to a four pane view to setup the reference images. The top left pane is the top view. I added the top down view of the star destroyer (using the Display->Set viewport Image menu item) and had to rotate it 90 degrees and move it to the origin to align correctly. I then used the same rough process to put the front (top right) and side (bottom right) views, making sure to center the images equivalently.

After dropping in a rough cube and pulling its shape to match I noticed the front view was way off.

Adding in some geometry helped me notice the misalignment and fix it at this early stage. Now I’ve got this:

adjustedfrontimage1

Stardestroyer Silo Setup

With this setup I thought this would be like a paint by numbers from this point for modeling! Then I tried pulling the view around with the trackpad on my laptop…YIKES! Looks like I will need to bring a mouse along for the next part of the modeling. I also noticed that the take screenshot code looks like it has a bug in that the view of the viewport image in the top right doesn’t align when the screenshot is taken. Odd…

What do you code for fun? April 20, 2009

Posted by jhuculak in Technical.
Tags: ,
add a comment

Sometimes it is fun just to write something for the sake of writing it rather than to have a useful end result. I was out for dinner with a group I used to work with and one of them is currently writing a game for the Sega Genesis. You would think that programmers would see how illogical writing a game for a “dead platform” is. Obviously the end result isn’t the point, it is the journey. Non-programmers might not get that sometimes the point of coding is having fun.

What coding do I consider fun? For me I have always had a fascination with minimalism. Small executable and efficient code have always been fun for me. I even lost marks on one of my exams in University because I made a mistake on my third iteration of optimizing the code to answer the question. The solutions weren’t even rated on their performance or size! Did I learn a lesson from that? Other than being correct is more important than speed, I continue to enjoy writing a small amount of code that can do more.

Minimal Executable
So…how do you make a small executable? I remember reading about a contest to write the smallest application that could download code off the Internet and run it. The author of the program was able to do this in something crazy like 138 bytes or something like that. I’m not interested in going THAT small, but I am interesting in looking at what you can do with a modern compiler like CL.

How big is the following code when compiled with Visual Studio 8’s (Visual C++ Express 2005) compiler?

int main(int argc, char* argv[])
{
return 0;
}

Step 1: Simple compile with CL.exe – 45,056 bytes

cl main.cpp

Seems like a lot of space for not doing very much. What should we trim next?

Step 2: Turning it to a windows program – 2,048 bytes
Modified the code a little:

#define WIN32_LEAN_AND_MEAN
#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR cmdLine, int nShowCmd)
{
MessageBox(NULL, “Small Test”, “Small EXE“, MB_OK);
return 0;
}

cl main.cpp /link /SUBSYSTEM:WINDOWS /ENTRY:WinMain /DEFAULTLIB:user32.lib

2kb is about as small as I would be looking for. The trick moving forward is avoiding anything that uses the standard library and static constructors. I still need to dig into more of what overriding the standard entry point does before I start writing stuff that is “useful” with this framework. Do I recommend anyone actually does any of the above? No, it is just for fun to see what you can do with small exes. Might add some rendering stuff next.

Game Breakdown – Resistance: Retribution vs. Syphon Filter: Logan’s Shadow April 13, 2009

Posted by jhuculak in Game Breakdowns.
Tags: , , , , ,
1 comment so far

I had high expectations for Resistance: Retribution (RR) given that it was Bend Studio’s follow up title to Syphon Filter: Logan’s Shadow (SF:LS). Syphon Filter blew my socks off in showing me what a shooter could be like on the PSP. I thought even having the same game with a new skin would have been a great experience. What I got was a similar quality game, but targeting a different audience that is much more into action/run and gun than they are into stealth tactics.

I’m going to compare Syphon Filter against Resistance in the following areas:

  1. Shooting Mechanic
  2. Story Telling
  3. Achievements
  4. Presentation

1. Shooting Mechanics
At first I hated the auto-targeting system that RR had because they took away the most impressive element of SF:LS – the ability to target precisely. At first I mentally fought with this and hated it until I realized it services a different kind of gameplay. In SF:LS I would creep around and because the mixture of the control system, world design and animation design allowed it, I would target precisely where people would poke their heads out and BOOM, headshot. Using the PSP controls (challenging at best) and being able to support precise shooting was incredible.

Cover Sharp Shooting (SF:LS)
The key ingredients to this shooting experience are:

  • Stealth approach to combat (they might not know you are there)
  • You and your enemies spend majority of time in cover, timing when to shoot
  • You aim from cover
  • Head’s are always at fixed crouching or standing height
  • Significant reward for a head shot, great animation feedback on it
  • Any weapon can be fatal, focus is on player movement and aim

Hose them down (RR)
The body count in RR is probably 5 times higher per minute of play than Syphon Filter (if not more).

  • Easy cover
  • Auto aim
  • Allow called shots for special enemies that need their heads removed
  • Strategy based on weapon selection and fire mode selection

At the end of the day, I prefer to have my tactics be movement or aiming based so I much preferred SF:LS for these mechanics. However, knowing why the design was changed, it did match the play experience.

2. Story Telling
Both games use a mix of videos and in game cinemas to tell their stories. I’m using my memory to recall the amounts of the story but I think the mix was something like this for each game:

SF:LS Story breakdown
Story Telling 20%

  • Pre-rendered cinemas 10% (explicit story telling, briefings)
  • In game cinemas 10% (mission context)

Gameplay 80%

RR Story breakdown
Story Telling 40%

  • Pre-rendered cinemas 10% (Introduction, per act cinemas)
  • Concept Art naration cinemas 20% (Mostly maps and narrated story telling)
  • In game cinemas 10% (in mission cinemas, small stories)

Gameplay 60%

I enjoyed both stories but I found RR had WAY to much attitude and forced naration through the story. They did a great job of telling the story and describing the motivation. The voice acting in the concept artwork told story was excellent as was the writing. I really didn’t like the main character until about the last quarter of the game. Logan’s shadow had more of a simple and cliche’d story, but the ensemble cast made me care more about the crew and let me focus more on the game itself.
3. Achievements
Both games have hidden documents and various achievments throughout the level. The key difference between the two games for me is that I have NO IDEA what the achievements in RR are whereas the achievements in SF:LS were very clear to me. To be fair I gave SF:LS more replays, but througout that play experience I was getting feedback on achievements. Replays were very clear and very fun to attempt. The focus was on using weapons and the environment properly and collecting hidden documents. The presentation in SF:LS increased the play experience. I didn’t find any game enhancing elements in RR.

4. Presentation
Both games really show off what the PSP can do. I think that RR probably takes the edge in technical difficulty and variety (mech levels) and also dealing with red/browns on PSP is very hard to make it look good with the low responce time on the LCD. SF:LS had more natural environments and more blues and whites. For my own taste LS:SF was again the better game.

Conclusion
Obviously I liked SF:LS much more, but both games are good. I find it fascinating that the same studio made a similar if not the same quality game but that choosing a more action based focus made the game less interesting to me. From what I can tell, this is an example of where choosing your audience really does dictate design changes. I hope that RR is more successful than SF:LS because I don’t think the previous games got the sales they deserved.

Digital palate cleanser April 6, 2009

Posted by jhuculak in Uncategorized.
2 comments

I had an awesome opportunity a few years ago to watch Andrew Glassner do a talk on story telling. I learned a lot about story telling in that presentation however, the thing that stuck with me the most was how he broke up his presentation with beautiful images (digital sherbert) that he called palate cleansers (at least I think that is what he called them). It fascinated me because they would hit at precisely that moment when your mind starts wandering and is fatigued in his presentation. I don’t know if they were 10 or 15 minutes apart or what the magical formula was but it made the entire presentation fascinating.

What does this have to do with making games? I’ve been a bit stressed out in the last couple of weeks and decided to take a break and search for a good palate cleanser to get me back into the swing of making things. I took some time to research what classes are available around my area that aren’t in my direct area of expertise (programming/managing). There are some fascinating classes I am considering in everything from 3D modeling/animation, Sound design, stop motion animation and even acting. A little cross training or trying something new may just be the palate cleanser I need to really hit my hobby projects. At the same time I can grow a breadth of skills that will help me eventually live up to the I, Game Maker moniker.

It is kind of silly to forget how exciting the potential of learning new things is. As I was reading through course descriptions I was finding myself getting more and more energized. Rather than signing up immediately, I decided to relax for the weekend and try and play through a game: Resistance: Retribution for the PSP. I am near the end and will do a writeup when I am finished. Come Monday or Tuesday I’m hoping I will sign up for a class or two!