Commit Graph

2148 Commits

Author SHA1 Message Date
2222f536f8 use replace 0 with NULL for pointers, set some functions static
also fixed own errors in recent static check commit.
2011-09-16 08:20:21 +00:00
0abe1911d5 - fix for access past the buffer size (paint / sculpt used some 2d vecs as 3d)
- remove redundant NULL checks on old code where it would crash if the result was NULL later on.
- add some missing NULL checks.
2011-09-16 06:47:01 +00:00
a04003d648 svn merge -rr40148:40166 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-12 14:28:21 +00:00
b8bf0ee822 Fix #28613: SEGFAULT: When setting Best-Quality on a Bump Map in GLSL viewport
Problem was caused by CRLF line ending instead of LF line ending.
Re-generate pu_shader_material to use LF line ending and made gpu codegen
treat \r as space character.
2011-09-12 09:47:28 +00:00
ceb9b237f2 svn merge -r40051:40075 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-09 15:25:15 +00:00
01744abd81 GPU: add gpu python module with export_shader() function to export GLSL shader.
shader = gpu.export_shader(scene,material) 

Returns the GLSL shader that blender generates to produce the visual effect
of material in scene for the purpose of reusing the shader in an external engine.
This function is meant to be used in a material exporter so that the GLSL
shader can be exported entirely. The return value is a dictionary containing the
shader source code and all associated data. 

The full documentation is under sphinx.

Warning: there has been an API between the patch and this commit:
uniform['lamp'] and uniform['image'] now return python reference to 
ID block instead of ID name as before. The X3D exporter that uses this
function must be adapted.
2011-09-09 11:55:38 +00:00
fb3f7d9566 svn merge -r39792:39829 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-09-01 00:56:21 +00:00
b3704f45c4 Fixes for snprintf usage:
* replace by BLI_snprintf in various places, note _snprintf on windows
  does not properly null terminate the string.
* fix overflow in sequencer proxy code due to buffer being smaller than
  specified size.
* fix some usage of snprintf as strcpy, this is will go wrong if the
  string contains % characters.
* remove BLI_dynstr_printf function in gpu module, use BLI_dynstr_appendf
2011-08-30 10:07:50 +00:00
5065d4c744 svn merge -r39664:39762 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-08-29 00:46:56 +00:00
fa2ba5fbf5 - use static vars and functions where possible.
- use NULL rather than 0 when used as pointers.
2011-08-28 05:06:30 +00:00
c96f28a718 - use %u rather tham %d for unsigned ints in string formatting funcs.
- replace (strlen(str) == 0) with str[0]=='\0'
2011-08-27 03:25:02 +00:00
6926060185 - fix for BL_Shader::SetUniform() missing out the last part of the matrix.
- particle.c wasn't setting all components of the vector when reading cache and setting dummy velocity values.
- some functions incorrectly took a float[3] argument when the 4th value was set.
- remove a few redundant lines of code.
2011-08-27 03:20:32 +00:00
fd4575b2e3 svn merge -r39493:39664 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-08-24 02:29:45 +00:00
abff0032c4 Fix #28343: glsl error after derivative maps commit. 2011-08-23 13:15:18 +00:00
6a374d266d glsl and render support for derivative maps 2011-08-22 19:57:54 +00:00
73dde4e26f svn merge -r38718:38804 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-29 02:03:53 +00:00
b8dcf3a662 Fix part of #27944: color managment discrepancy in GLSL materials with nodes. 2011-07-28 14:28:27 +00:00
48a64ffa70 more minor warning cleanups and improve error reporting if text fails to save. 2011-07-27 06:55:20 +00:00
ac2dd40991 svn merge -r38300:38400 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-26 03:14:16 +00:00
794f3291fe svn merge -r38200:38300 https://svn.blender.org/svnroot/bf-blender/trunk/blender, source/blender/gpu/intern/gpu_buffers.c updated from trunk and re-made edits to use getTessFace* functions. 2011-07-26 03:00:55 +00:00
6199276053 svn merge -r37800:37900 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-25 14:54:29 +00:00
a7815053ef svn merge -r37600:37700 https://svn.blender.org/svnroot/bf-blender/trunk/blender
manually merged source/blender/editors/uvedit/uvedit_unwrap_ops.c
2011-07-25 12:59:54 +00:00
b709b52f46 svn merge -r37500:37600 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-07-24 13:21:54 +00:00
1fd33b6e77 cmake option to build without smoke sim: WITH_MOD_SMOKE 2011-07-13 18:40:21 +00:00
abdf420a6d == GPU Buffers ==
This patch attempts to clean up and document the GPU buffers
code. There are a few bug fixes as well.

Patch reviewed here: http://codereview.appspot.com/4631052/

Summary:

* Bugfix: make GPU_buffer_copy_normal convert from shorts to floats
  correctly, also fixed the use of cached face normal CustomData.

* Bugfix: changed the `mat_nr' field of GPUBufferMaterial from char to
  short.

* Changed color buffer setup to not alloc a temporary copy of color
  data, just passes the MCol data in directly.

* Changed the GPU buffer pool code to make clearer what operates
  specifically on the global pool.

* Lots of refactoring for GPU_drawobject_new; should operate mostly
  the same (except got rid of one unecessary allocation), just split
  into more functions and without macros now.

* Converted some #defines into enumerations.

* Made some stuff private, pulled out of header file.

* Deleted unused function GPU_buffer_pool_free_unused().

* Removed GPU_interleaved_setup and related #defines. (I think this
  was used for editmode VBOs, but those were disabled.)

* Added lots of comments.

* Added a few comments in the code signed `--nicholas' to note places
  where I am unsure about design or usage, would be good to address
  these better.

* Code formatting changed to be more consistent with the rest of
  Blender.

* Renamed some fields and variables to be more consistent with
  Blender's naming conventions.

* Renamed some fields and variables to use more descriptive names,
  e.g. renamed `redir' to `mat_orig_to_new'.

* Removed print outs with DEBUG_VBO -- don't feel too strongly about
  this one, just not used elsewhere in Blender, could be easily added
  back if others disagree though.

* Moved the PBVH drawing code down to the bottom of the file, before
  was sitting in the middle of the other VBO code
2011-07-08 19:58:02 +00:00
cf90b9497f VBO:
Fix for bug found by psy-fi.

* gpu_buffers.c was using GL_ARB_vertex_buffer_object to check for VBO
  support, should be using GLEW_ARB_vertex_buffer_object.
2011-06-28 00:40:39 +00:00
c27fa83cf7 Fix #27703: reflection texture coordinates + nodes not working right in GLSL. 2011-06-20 09:08:41 +00:00
a3e296fc40 Committing patch #25676 Anisotropic filtering in viewport and BGE by me.
This patch adds anisotropic filtering of textures in the viewport and the BGE. The quality of the filtering is adjustable in the user preferences under System. For more information on anisotropic filtering:
http://en.wikipedia.org/wiki/Anisotropic_filtering

One current limitation of this setup (having the option a user preference) is it makes runtimes more troublesome. Runtimes don't have user preferences set, so for now the blender player defaults to 2x AF. Options will be added later to change this value (probably a command line option).
2011-06-15 18:59:22 +00:00
f122a74b1e svn merge -r37078:37335 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-06-09 15:20:29 +00:00
b481524fde fix for float projection painting, now updating correctly.
This fix also allows for partial update of the image, speeding up painting. 
The different code path implemented will be used to upload high resolution images to OpenGL when onion branch is merged.
Due to conversion of float textures to/from sRGB, corrections made to brush color sampling to take account of the image profile. This is not 100% correct yet as texture images used for projection painting strokes are not converted to/from sRGB yet(This has been decided due to loss of precision for 8-bit formats). It will have to do for now, though.

last-minute update, exr image loading is broken, will fix asap
2011-06-06 22:10:05 +00:00
671cb93f1b svn merge -r36801:36840 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-05-24 04:35:21 +00:00
d0e4f7b9f2 remove unused code, comment some that may be useful (maintainers can remove). 2011-05-23 15:23:31 +00:00
33bfcb26b8 manually copy more changes from trunk. 2011-05-12 09:02:39 +00:00
0f329ebdf1 svn merge -r36583:36603 https://svn.blender.org/svnroot/bf-blender/trunk/blender 2011-05-11 00:19:13 +00:00
89a166d0de remove some duplicate declarations 2011-05-10 14:48:06 +00:00
6ef77cf95a =bmesh= merge from trunk at r36529 2011-05-08 23:43:18 +00:00
a9b066a9c6 Fix for recent glsl commit, forgot to include this file. 2011-05-02 15:59:24 +00:00
14d7d480df Fix #26807: glsl diffuse/specular was not clamping negative values, giving
some inconsistent results with the renderer.
2011-05-02 14:01:45 +00:00
7f4b4bbaf0 Fix #26697: glsl color management + vertex color was not working right. 2011-05-02 13:52:41 +00:00
bee2523a41 Related to bug #27004: there is now an option to disable color management for
GLSL. I've tried to find a quicker way to do it that still looks the same, but
couldn't find a formula that didn't have major color shifts.
2011-05-02 09:08:43 +00:00
f9f771cd01 converted more mixed tab/space indentations to tabs. only whitespace changes. 2011-04-21 15:53:30 +00:00
210ee1ade4 whitespace only, no functional change mixed tabs/spaces --> tabs. 2011-04-21 13:11:51 +00:00
71f571a54d fix [#26955] GL Texture Size doesn't work.
Brecht: reverting this change you made r22532, which I cant see a reason for.
2011-04-16 09:26:45 +00:00
c98148a963 =bmesh= merge from trunk at r36153 2011-04-15 01:19:13 +00:00
0298d223cc quiet various warnings, also disable -Wdouble-promotion with cmake since it gives warnings with variable length args. 2011-04-03 10:04:16 +00:00
69bd72c3b6 quiet gcc float -> double promotion warnings. 2011-04-02 02:08:33 +00:00
e7bf671e25 se BLI_snprintf() for msvc compat, cleanup CMake file, some bad comments left in.
also on only try build RPM's on linux.
2011-03-07 03:57:04 +00:00
Nathan Letwory
12ec60ca46 Ensure gpu_extensions.c compiles with MSVC -> include BLI_winstuff.h 2011-03-07 00:49:21 +00:00
627c764e3c bug [#26329] Project Paint not working
we cant ensure that a requested buffer can be allocated so report opengl errors when failing to allocate the buffer (rather then printing to console).

this is common enough and generic error isn't too helpful to users.
2011-03-06 23:12:12 +00:00
c7fccc84bf use NULL rather then 0 for pointer assignments & comparison, modifier, imbuf & editors. 2011-03-05 10:29:10 +00:00