Blender Git Commits

Blender Git "soc-2012-swiss_cheese" branch commits.

Page: 3 / 14

August 9, 2012, 17:07 (GMT)
Switch to glsl gpu lights for OpenGL ES and OpenGL 3.0+
P.S.
They aren't implemented yet
August 9, 2012, 16:38 (GMT)
Use gpu extensions check instead of gew one.
August 9, 2012, 15:42 (GMT)
Fix for gcc. Header was in glew.h which was removed.
August 9, 2012, 09:14 (GMT)
Some matrix fixes to fix a GPU_SAFETY assertion in blf.c

Changed gpuGetMatrix and removed gpuGetSpecificMatrix, we only really need one.
Added casts to gpuProject and gpuUnproject to quiet a lot of warnings. Hopefully this kind of macro will go away.
Made sure that default mode GL_MODELVIEW is reset after changing other matrixes
gpuGetMatrix returns a const pointer. It does not seem like a good idea to expose the internals of the matrix module.
Some white space formatting for gpuCommitMatrix, and other matrix functions.
note: gluPerspective is present in KX_Dome.cpp, but it is commented out
Some code in the RAS_OpenGLRasteriser.cpp used OpenGL as a scratch space to make a new matrix, I removed that and just did the calculation using Blender's matrix functions.
August 9, 2012, 09:03 (GMT)
adding some proper consts to matrix functions
August 9, 2012, 06:03 (GMT)
removed gpu_framebuffer.c from CMakeLists.txt
August 9, 2012, 05:49 (GMT)
there are already a couple of places for framebuffer objects, so I'm not gonna add another right now
August 9, 2012, 05:19 (GMT)
compile fixes from mismatched calling conventions
August 8, 2012, 17:26 (GMT)
Adding simple VBO compatibility functions.
It uses mapbuffer when available, otherwise it falls back to glBufferData
Still we need good api for VBO (maybe even gl independent)
August 7, 2012, 23:10 (GMT)
Quads and polygons is not supported by ES and 3.0+
Converted all GL_QUAD_STRIP to GL_TRIANGLE_STRIP as hey are identical.
Converted all GL_POLYGON to GL_TRIANGLE_FAN because it seems graphics cards use it internally
Converted some singular quads GL_QUADS to GL_TRIANGLE_FAN
Still there ~45 QUADS left.
A: we can write an emulator,
B: we can stop using QUADS because they are triangles anyway
Maybe A then B
August 7, 2012, 22:56 (GMT)
header fixup, aspect api, warning fixes, removed some minor use of display lists, lots of other misc. changes.
August 7, 2012, 16:59 (GMT)
Converted all glMatrix calls to gpuMatrix
gpuMatrixCommit occurs right before glDraw* (mainly in gpu_immediate and few other places)
August 7, 2012, 16:47 (GMT)
gpuMatrix clean up in GE: Removed glMatrix calls, removed unnecessary matrix commits, converted gluProject to gpuProject
August 7, 2012, 16:37 (GMT)
New gpuMatrix functions:
gpuGetSpecificMatrix returns/writes matrix of specified type.
gpuRotateVector rotates current matrix by 3d vector.
gpuRotateRight rotates current matrix by right angle

gpuProject is simular to gluProject, but uses vectors instead. Probably we should move it to BLI_math or use current matrix instead?
gpuUnProject is simular to gluUnProject, but uses vectors instead. There is a bug, so we relay on gluUnProject for now. Should be fix soon.

August 7, 2012, 16:23 (GMT)
Adding new functions to BLI_math_matrix

mult_m4_m3m4_q multiples 4x4 and 3x3 matrices and outputs 4x4 (needed for rotation). It doesn't do safe check!
mul_v4_m4v3 multiples 4x4 matrix by 3d vector and outputs 4d vector
mul_v3_m4v3_q multiples 4x4 matrix by 3d vector and outputs 3d vector. It doesn't do safe check!

rotate_m4_right rotates 4x4 matrix by 90 degrees. Acceptable paxis values are 'X', 'Y', 'Z', -'X', -'Y', -'Z'. Negative char rotatates -90 degrees.
August 7, 2012, 16:04 (GMT)
gpuLights compilation fix for gcc
August 4, 2012, 00:08 (GMT)
By adding some padding to the VBOs to make them 32byte aligned, I got a noticeable performance boost out of an ATI card. Nvidia doesn't seem to care as much. We could eventually do a version check since this does make use of a bit of extra vram (especially for things like mobile that have limited resources).
August 4, 2012, 00:01 (GMT)
Using glMapBuffer to directly write data into VBOs. This makes updating the VBOs not nearly as slow, which provides a huge speed up to scenes with a lot of updating (e.g., skinned meshes). By the way, this code might have to fixed up for Android/GLES.
August 3, 2012, 23:45 (GMT)
Patch from Daniel Stokes to fix bugs when using VBOs and a mesh gets split across different material buckets.
August 2, 2012, 18:55 (GMT)
Some glLight functions remained in KX_Light.cpp
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021