Tips, Websites, Notes2Self

Webistes for Unreal (Engine) [ ]

Forward Declaration: Use a class’s pointer/reference without defining it (without including the header defining the class)
Forward declarations seem to work only with pointers. Chris has seen them work with references too, but can’t seem to figure how at the moment. They don’t seem to work with nested types like ObjectManager::EffectDesc. When/Why to use – const type & See Also: C++ for game programmers Noel Llopis

Visual Studio 2005
Memory Breakpoints aka Data Breakpoints:
Open the Breakpoints window (alt+F9)
click the "New" pulldown – its got "Break at function…" and "New Data Breakpoint…"
Ths is enabled while the program is being debugged

Visual C++ Tips
[Use the Microsoft Symbol Server to obtain debug symbol files]
[From my Symbols.txt] Richard "Superpig" Fine
Pointer Codes

Visual Studio 2005
Exceptions – Debug > Exceptions (Ctrl + Alt + E); (Break when) Win32 Exceptions > Access Violation C0000005 (etc)
Loading Symbols Manually. Module Window > Right click to Load Symbols while debugging.

Catching Floating point exceptions
    _clearfp(); // always call _clearfp before enabling/unmasking a FPU exception
    _controlfp( _EM_ZERODIVIDE, _MCW_EM );

Visual Studio Solution file "unrecognized version" : check if it has LF line endings

Visual Studio Project > Linker Settings > Command line: /VERBOSE[:ICF |:LIB |:REF |:SAFESEH]
also, when having issues with DLLs remember the Depedency walker.
mt -manifest Project1.dll.embed.manifest -outputresource:Project1.dll;2 (

Windows batch tutorial
Windows Script to match text lighthing models with hlsl OpenGL Geometry Shader Marching Cubes

PSP Programming

dynamic imposter [ ] I did something cool based on this with DW

Why can’t I initialize my static member data in my constructor’s initialization list?

‘natural’ order (scale, rotate, translate) Link from the Chunk LOD paper, link has stuff on WinDBG too.

A bit about skinning

Animation Blending: Achieving Inverse Kinematics and More

D3DXSaveSurfaceToFile( L"", D3DXIFF_DDS, bbSurface, NULL, NULL );

When using the Debug D3D driver
CreationCallStack=0x048ef100 "To enable creation call stacks set \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Direct3D\D3D9Debugging\EnableCreationStack = 1"

Photoshop: To create an alpha channel.
Ctrl + click the thumbnail of a layer to select it, enable/create an
alpha channel (Layers/Channels/Paths tabs). Use a brush to fill in
selection with white/black/…
GIMP (For those artists who keep asking: Its so much lighter than Photoshop [as a programmer I don’t need the stuff that comes with PS], and gets so much more done than paint.) Ctrl+L Layers, Pg Up/Down for Prev/Next Layer, P – Pen Tool, Shift to make straight lines, Z to Zoom in (Ctrl for out), Shift+C to Crop, T for Text, Layer > Transparency > Add alpha Channel.

3Ds Max Tip:
More Frame rate for animations (slow mo etc)
Motion Tab > Biped > Mixer Mode on
Biped apps > Mixer > delete everything > add new transition?? > strectch > collapse > save as bip
open file again: Motion Tab > Motion capture > Load MC file (from above) > Play!

3Ds Max TIP Right click frame slider to copy a key.. (set key + … )

3Ds Max TIP (Biped) Motion tab > Biped > (Move all mode) (move the entire biped say from somewhere back to origin to be able to export properly in Vicious)

3Ds Max TIP: Pivot Point is in the hierarchy tab

3Ds MAX tip UVW Map, selects its gizmo and then translate/scale/rotate and ‘collapse to’ to save the coordinates.

3Ds MAX Tip: To adjust the texture
(Modifier List>Object Space Modifiers>) Unwrap UVW > (Parameters) Edit

3D Studio Max "Moving a biped down"
– Select Biped
– Motion Tab > gow down to "Layers"
– Create a new Layer
– Auto key (or set key from the near the "Layers", Motion panel)
– move biped to wherever the **** you want it.
– auto key off
– Collapse the layer [Motion Tab > gow down to "Layers"]

3Ds Max "In place animation"
Motion tab
Biped Apps
+ Modes and Display

3Ds Max – "To Make segments"
Convert to Editable Poly (If Editable Poly > Editable Mesh, trash the top/parent modifier and convert[right click]) and then choose connect (edges)

3ds Max (Script) To affect rotation of pivot, set <node>.objectoffsetrot
MAXScript Language Reference > 3ds Max Objects > Node: MAXWrapper > Node Common Properties > Node Transform Properties

FPS Tips (should show this to everyone so that the competition gets better)

DXops; my Skill ++

Matrix Composition… B.A is READ AS "A followed by B"

Transforming Normals

To build PhysX samples (2.7.2) on linux:
Link: glut GL GLU PhysXLoader dl
create link to /usr/lib/PhysX/v2.7.2/ in /usr/lib

To load PhysX 2.7.2 Debug DLLs/Symbols
set HKLM\Software\AGEIA Technologies\enableLocalPhysXCore (REG_BINARY) 00 1b fc73 b8 ce (your MAC address)
(User) PATH=%PATH%;C:\Program Files\AGEIA Technologies\SDK\v2.7.2\Bin\win32
PhysXCorePath C:\Program Files\AGEIA Technologies\SDK\v2.7.2\Bin\win32

When compiling goes fine but running goes weird:
Check for your defines!
// Projects With the Debug_Physx configuration have PHYSX_ENABLE defined for them.
// Description of problem:
// bwcl*nt, camera, ch*nk, du*lo, m*o, physics2, physx, r*mp, s*o
// included physx.hpp in their pch. physx.hpp defnied PHYSX_ENABLE
// all other projects that included any header from those projects
// ended up including declarations without the PHYSX_ENABLE macro.
// The end result: watching values seem to show ‘shifts’ in classes.
// like a matrix seemed correct except for one value at the begining
// as if it was shifted in memory by one float.

Open Office dot org
if you don’t want an automatic gap between paragraphs/numerings try
"Format" > "Paragraph" > "Indents & Spacing" > Spacing Below Paragraph > CHANGE to 0.00" (from the default 0.14")
"Format" > "AutoFormat" > UNCHECK "While Typing" (disable automatic indentation of numberings)

Newline to Spaces (and the other way around)
Notepad++        Edit > Join Lines (Ctrl+J)       (and Split Lines (Ctrl+I) )
                 TextFX > TextFX Edit > Split Lines at (clipboard character) or , (C) [(VB)]
Notepad2 Edit > Block > Join Lines (Ctrl+J) (and Split Lines (Ctrl+I) ) (Join doesn’t work)
Other useful stuff in Notepad++ : regular expressions, find in files (yeah yeah, Visual Studio supports this stuff too…). Check the TextFX menu for more.

Perforce UI TIP discovered(sort of forced to use it on a project): Edit > Find file matching pattern Ctrl+F (filter)
press F3 (find next)
(I do not wish to have to use Perforce in future. Especially not have to merge between svn, mercurial and perforce all on one project!)

Offline logs:
setting up Apache/Python/wsgi/Trac/svn/hg/mediawiki/wordpress
setting up SSH+RDP

This entry was posted in Computers and Internet. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s