Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 14 Feb 2007
Online Last Active Today, 11:51 PM

#5166500 How do i become a game director someday?

Posted by Hodgman on 12 July 2014 - 06:55 PM

Yeah I've never heard of a Game Director either.
The job in your link sounds like a combination of Art Director, Creative Director, Lead Designer, Producer and Studio Manager/Development Director... Titles and roles vary widely from company to company though - these things aren't standardized.

With those courses, you seem on track to become a game artist, able to go on and specialize in painting/illustration/concepts, environments, characters, animation, etc, afterwards (or concurrently in your spare time). Is this what you want to do first - be some kind of game artist?
If you excel at that, and had an eye for managing a team, then you may become a lead artist (or lead animator, or lead concept-artist, etc). The next step above that would be Art Director, who oversees all the art leads, and guides the look of all visual aspects of the game.

If you excel in management maybe you could move over to being a producer, and then on to Development Director.

At any point maybe you could fall into a game design role, and then on to Lead Designer. Producers and Game Designers actually have a lot in common - I've seen a lot of people transition back and forth between those two roles.

In my experience, people become Creative Director (basically the boss of art & design) by founding their own company ;-P

#5166402 hyphotetical raw gpu programming

Posted by Hodgman on 12 July 2014 - 07:29 AM

The front-end of the GPU processes very high-level/complex instructions - basically the result of Draw/Dispatch commands from GL/D3D. This front-end reads/executes these commands, which results in work occurring in the shader cores.

E.g. The front-end might execute an instruction that says to execute a compute shader for 128x128 items. It then creates 128x128=16384 "threads" and groups them into 16384/64=256 "waves" (because it uses 64-wide SIMD to work on 64 "threads" at once). Each of these "waves" is like a CPU-thread, having it's own instruction-pointer, execution state/register file, etc... The GPU then basically "hyperthreads" those 256 "waves". If it's only got 1 "processor", then it will only execute 1 wave (64 "threads") at a time. If it has to stall due to a cache-miss/etc, it will save the execution state and switch to a different wave (which will have its own instruction pointer, etc).

#5166366 XNA vs Other

Posted by Hodgman on 12 July 2014 - 03:27 AM

You can just install windows on your MacBook as well as OSX. Then you can use OSX for your personal stuff and Windows for your homework.

#5166353 (Super) Smart Pointer

Posted by Hodgman on 12 July 2014 - 01:11 AM

shared_ptr doesn't seem to work because that is reference counted.
The other option I thought of was creating a new pointer type (unless one exists), where anytime I deconstruct a copy of the pointer, it has maintainted a list of people pointing to it and sets all pointers in the list to NULL.

Or of course simply a weak_ptr.
shared_ptr and weak_ptr are entirely the wrong mechanisms here -- both express a particular flavor of ownership (potential ownership, in the case of weak_ptr), but the marines discussed here don't 'own' their target. Any pointer they do hold to their current target should be raw (raw pointers are the preferred mechanism for non-owning semantics) and probably const-appropriate.

A weak_ptr expresses no ownership at all; it expresses using an object that may have a shorter lifetime than you.
It's also the exact "unless one exists" class that the OP was about to reinvent.
A raw-pointer expresses that the used-object's lifetime is longer than the user-object's lifetime. In this case, if the building can be deleted before the marines, then a raw-pointer isn't valid (without reinventing some kind of notification system, a la weak_ptr). Yeah, maybe the building/marines shouldn't be getting deleted at all, but that's another kettle of fish! wink.png

#5166092 DXT for terrain normals?

Posted by Hodgman on 10 July 2014 - 05:18 PM

DXT3 is basically DXT1+4bpp alpha, and DXT1 really sucks for storing normals. The problem is that it uses a palette of RGB values, and blend weights for that palette, which means that R, G an B are inter-dependent; a gradient in the R channel will impact the quality of the G channel.

As MJP mentions above, a common solution was to use DXT5, where RGB and A are seperately encoded, an then store zeroes in R/B, and the normal data in G/A...
So I would not recommend the scheme you're thinking of.

Anyway, do you need texture blending at each terrain point? I would think you would want to store at least two 4-bit indices and an 8-bit blend weight ;-)

#5166091 Drawing in one draw call vertex buffer with different programs

Posted by Hodgman on 10 July 2014 - 05:05 PM

That kind of ubershader is still one program though ;-)

Also, I would recommend only ever using that approach if you're desperate to reduce CPU-side overhead. That technique allows you to drastically reduce the amount of gl* calls that the CPU has to make, but it's also likely to cause a huge amount of overhead on the GPU-side - so you're wasting GPU-time in order to gain CPU-time.
If your game is GPU-bound, then you'd be better off making more draw calls with non-uber shaders ;)

#5165912 MIT License in PlayStation Vita Game

Posted by Hodgman on 09 July 2014 - 05:53 PM

The purpose of the license is to protect the author from plagiarism (of the source), and to allow easy commercial use... So I too thought that they way that they define "The Software" only covers the source code and documentation that you received.
I thought that, if 'using' the software involves a one-way transformation into a binary blob, which has the effects of culling all superfluous text (including the license), then it's natural that you wouldn't have to jump through hoops on order to distribute hat blob.

#5165401 Game Engine for Photo-realistic Simulation (Unreal4 or Crytek)

Posted by Hodgman on 07 July 2014 - 05:37 PM

AFAIK, the EAAS version of CryEngine doesn't let you write your own shaders, so you'd want to subscribe for a month to evaluate if it's built-in shaders/rendering systems suit your needs.

#5165172 How to use external variables in HLSL?

Posted by Hodgman on 06 July 2014 - 08:35 PM

Can you just do:

cbuffer blah {};
#include "master.h"
void main() {};

#5164977 How to play a game that you created on an XDK

Posted by Hodgman on 05 July 2014 - 07:13 PM

The XDK can only be used by licensed developers, and is covered by NDA.
Discussing it here would be a breach of NDA, which could result in my/your employer's contracts with Microsoft being torn up, and us being fired.
Your workplace shouldn't have let you take it home either -- those same contracts mean the 360 devkit and the XDK software must be kept private and secure at all times.

To answer the question though - no you can't play normal games on it and there's no public forums for discussing it. Your best be would be talking to a programmer at the workplace you pinched it from.

#5164475 Lua issues: script loading

Posted by Hodgman on 02 July 2014 - 09:39 PM

or am I just missing something HUGE with lua?
By "loading a script", do you mean sending a pile of text to the lua VM and asking it to execute it?

Imagine if in C, you decided to run an exe file every single Update/Render, rather than just calling a function.


You can do that in Lua - load the script once (just like we run an exe file once), and then call your Lua functions (from C) every time you want to update/render.

#5164460 Flight Simulator licensing?

Posted by Hodgman on 02 July 2014 - 07:31 PM

Soon the very air we breathe with be trademarked and we'll have to pay a fee to some company.....

Patent #US13839823: Method and apparatus for absorbing oxygen into a biological life form for the purpose of metabolism from common air samples via cyclic respiration using a plurality of organic filters laugh.png

#5164302 Flight Simulator licensing?

Posted by Hodgman on 02 July 2014 - 06:45 AM

I have always wondered if the "let them come to me" attitude could work.

Basically develop your game using their license, trademarks etc. Then when or if their lawyers come knocking, just pay your dues.


I don't recommend this at all (this is purely a theory and is likely to be very unprofessional practice) but I wonder if anyone here has experience similar to this?

They will come knocking as a cease-and-desist-type legal threat -- "Pull your game out of existence right now or we're gonna sue you into the stone age" -- which probably isn't the best place to begin negotiating your dues from wacko.png

#5164243 How to capture video of gameplay

Posted by Hodgman on 02 July 2014 - 01:17 AM

If you've got a modern nVidia card, then ShadowPlay works wonderfully.


Another option that's more popular with consoles than PCs, is to plug your PC's HDMI-out into another PC's capture-card's HDMI-in.

#5164196 Flight Simulator licensing?

Posted by Hodgman on 01 July 2014 - 08:21 PM

As to whether you need permission to display a real world product, it's a bit of a grey area... For example, EA used to license all of the weapons used in their games, but recently they decided to backflip on their policy and they now use real-world guns without paying any license fees, claiming that they don't have to.


Seeing that you're reproducing military equipment from over 50 years ago, I would guess that you'd be pretty safe from any kind of copyright infringement claims... You could get in touch with a lawyer who specializes in copyright to get some solid advice.