Alright, I've figured out where I need to modify the code to make the camera do what I want, but I'm a bit confused.
When dealing with angles in quake (lets assume a 360-degree scale for reasonability here, not quake's 256-degree scale due to 8-bit constraints)
Does a 0-degree pitch mean facing directly forward, up, or down? Which direction is straight down? Is it 90 degrees or is it 270 degrees?
Does 0-degree yaw refer to north-up (equivalent to a vec3_t {0,1,0} ) or does it refer to where the player is facing? Do degrees increment to the right or left? (If I am facing 0-degrees, is 90-degrees to my right or left?)
Does a 0-degree roll refer to horizontal or vertical? If horizontal, is it right-way-up or upside-down? If vertical, is it right-side-down or left-side-down?
Thanks,
LANS
vec3_t forward,right,up;
AngleVectors( { 0.0f, 0.0f, 0.0f }, forward, right, up );
answers all of your questions.
edit: q3 doesn't have 256 angles, angles are measured in degrees
So, after compiling tremulous succesfully once, and then changing nothing, and trying to compile it again, I get perplexing errors.
make[2]: *** No rule to make target `src/ui/ui_shared.c', needed by `build/release-darwin-x86/base/ui/ui_shared.o'. Stop.
make[1]: *** [targets] Error 2
make: *** [release] Error 2
I haven't patched/backported yet, I'm just trying to compile the latest SVN using make. ./make-macosx-ub.sh results in the same error.
Any ideas on how to fix this would be appreciated.
Doing make clean sometimes solves problems like this.
make clean doesn't really help. It changes the error to:
make[2]: *** No rule to make target `build/debug-darwin-x86/base/ui/ui_shared.o', needed by `build/debug-darwin-x86/base/cgamex86.dylib'. Stop.
make[1]: *** [targets] Error 2
make: *** [debug] Error 2
At least ui_shared.c is being compiled now, its just being skipped in the linking process. I haven't edited my makefile, so if its in there LD should still be looking at it. If its not in there, what would I need to change to make it link? I'm not too familiar with makefiles.
Umm... make toolsclean or make distclean, perhaps?
distclean and toolsclean don't help. I get the same error. I'll try redownloading the code from the SVN in case something got inadvertently changed and try again.
svn status (or svn st) is a good way of checking you haven't accidentally deleted or modified something. It's a brief overview of your changes on a per-file basis. An ! in the first column indicates svn is expecting a file at that location but couldn't find it, whereas a M indicates that the file has modifications. Try svn help status to see a description of the other letters.