» soc-2012-swiss_cheese
Updated 12:42 August 26th, 2012
Be thankful, comment
(1774)  2,014

changes:

Commit by campbellbarton :: r50097
svn merge ^/trunk/blender -r50064:50096

Commit by jwilkins :: r50082
"Pens Down" merge /w trunk r49015-r50064.  Make clean patches for Google Summer of Code against trunk revision 50064.
Note: The new flag LIB_LOAD_ASYNC in the GE conflicted with trunks new LIB_LOAD_SCRIPTS, so I changed the value
of ASYNC.  So, heads up if these values has been saved in any .blend files!
Once again (see last merge note) it seems like node_draw.c had a bunch of wierd conflicts that make it look like
it missed a merge or update.  Not sure what is going on with that file.
Other parts of the merge had some difficulty resolving proper bracket nesting in places where it seems like the merge
should have gone smoothly.  Maybe that was KDiff3's fault?  This reduces my confidence on if bugs were not introduced.

Commit by jwilkins :: r50065
Added file view3d_composite.c to be the home of a small API needed to do complex GPUaspectfuncs that involve
combining multiple layers.
The file is empty right now, but I wanted to include it before doing a merge in preparation for submitting the
patch for the end of GSoC.

Commit by alexk :: r50051
Some texture fixes and Clean up for GLES/GLSL

Commit by jwilkins :: r50046
Added missing gpuImmediateFormat/gpuImmediateUnformat for knife tool and proportional edit

Commit by jwilkins :: r50020
fixed warning about const qualifier on function parameter

Commit by jwilkins :: r50018
Added missing gpuImmediateFormat/gpuImmediateUnformat for loopcut visualization.

Commit by jwilkins :: r50003
There was a harmless errant backslash (\) at the end of the file that I removed.

Commit by jwilkins :: r50002
Added missing gpuImmediateFormat/gpuImmediateUnformat for drawing certain kinds of bones.

Commit by jwilkins :: r50001
Added missing gpuImmediateFormat_V3/gpuImmediateUnformat that was causing blenderplayer to crash.

Commit by jwilkins :: r49999
stdint.h is not available in MSVC

Commit by nicholas_rishel :: r49982
Moving toward the new way of handling context. Not fleshed out, but merging to prevent against data loss (while
it is still compiling!).

Commit by alexk :: r49969
Switching Android GE from VA to VBO. VBO gives much better performance on Android.

Commit by alexk :: r49968
Switching Blender Font texture from GL_CLAMP to GL_CLAMP_TO_EDGE, as there is no difference and previous in not
supported by GLES.
It is a good idea to add texture api later.
Adding real mode for GLES

Commit by alexk :: r49967
Fix for Android blenderplayer compilation and blender bin path

Commit by alexk :: r49966
Adding implementation for implementation for glsl. Maybe, there is a reason to share some code between gl11 and glsl
(with gpu_object).

Commit by alexk :: r49965
Some small gpu matrix and other changes.

Commit by alexk :: r49959
Extends gpu_object for glsl by adding color(pointer and single) and texture coord.
Also adding two shader for glsl:
shader_main - simple color
shader_alphatexture - alpha texture (for text).
Later we will have more orgonized shaders.
gpu_object_glsl is available on desktop also (but not used) for OpenGL 3.0+

Commit by alexk :: r49958
Forgot in last commit

Commit by alexk :: r49957
Adding gpuGetClearColor to get current clear color.

Commit by alexk :: r49956
glMapBuffer is not implemented on Android. Fix for crash.

Commit by alexk :: r49883
Fix for lights. The graphic type was initilized after lights init.
(Didn't test GE, but should work)

Commit by alexk :: r49792
Adding Sensor support for Android (Java side)
Some cleanup
Adding static PathsHelper class for getting app path and installing libs. File releated routines goes here.
Logcat FPS counter (Should be removed from final versions for speed probably)
The functions that are exported to jni have "export_" prefex

Commit by alexk :: r49790
Adds support for sensor in Android app.
Little rearrangements to make code more clear.

Commit by alexk :: r49789
Small android config fixes
makesActivity shouldn't be in deploy.sh
No internet download: no need for permission and button
Updated app version to 1.1 so this rlease would replace 1.0 release lib

Commit by alexk :: r49787
Convering 2D filter Manager to gpu_gl functions
Should ease the port in future.
Still we should have add vertex shaders.
And use FBO with textures instead of textures for rendering on OpenGL ES. Not sure if simple method is supported.

Commit by alexk :: r49786
Fixes for ES after gpu functions rename

Commit by alexk :: r49785
Some video mode improvements for OpenGL ES on Linux

Commit by alexk :: r49784
Renaming gpu functions from gpu* to gpu_gl* because they aren't abstractions

Commit by alexk :: r49782
Forgot to add in last commit

Commit by alexk :: r49781
Switching most gl view calls to gpu wrapper (To avoid a lot REAL_GL_MODE for ES)
Fix blend function in GLSL viewport

Commit by alexk :: r49751
Adding gpu_view module.
It has functions like setting the viewport and clearing it.
Afaik it should be compatible with DirectX
We need gpuClear = glClear because calling color with depth clear is more efficent.
I will commit most conversions tomorrow.
It is much easier than doing REAL_GL_MODE to each viewport function.

Commit by alexk :: r49741
It is better to check GPU EXT than glew (Support for GL ES)

Commit by alexk :: r49740
No need for glMultMatrixf and glLoadMatrixf trick.

Commit by alexk :: r49739
Switch to glsl gpu lights for OpenGL ES and OpenGL 3.0+
P.S.
They aren't implemented yet

Commit by alexk :: r49735
Use gpu extensions check instead of gew one.

Commit by alexk :: r49733
Fix for gcc. Header was in glew.h which was removed.

Commit by jwilkins :: r49728
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.

Commit by jwilkins :: r49727
adding some proper consts to matrix functions

Commit by jwilkins :: r49726
Added EOL property to new files in gpu directory.

Commit by jwilkins :: r49725
removed gpu_framebuffer.c from CMakeLists.txt

Commit by jwilkins :: r49724
there are already a couple of places for framebuffer objects, so I'm not gonna add another right now

Commit by jwilkins :: r49723
compile fixes from mismatched calling conventions

Commit by alexk :: r49712
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)

Commit by alexk :: r49675
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

Commit by jwilkins :: r49674
header fixup, aspect api, warning fixes, removed some minor use of display lists, lots of other misc. changes.

Commit by alexk :: r49669
Converted all glMatrix calls to gpuMatrix
gpuMatrixCommit occurs right before glDraw* (mainly in gpu_immediate and few other places)

Commit by alexk :: r49665
gpuMatrix clean up in GE: Removed glMatrix calls, removed unnecessary matrix commits, converted gluProject to
gpuProject

Commit by alexk :: r49664
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.

Commit by alexk :: r49662
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.

Commit by alexk :: r49660
gpuLights compilation fix for gcc

Commit by moguri :: r49548
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).
Feeling talkative?
Log in to leave a comment.