Commit Graph

33 Commits

Author SHA1 Message Date
8e81da423c Fix #30071: crash with cycles glsl, textures functions (which are stubs still)
got out of sync with node changes.
2012-02-08 16:48:26 +00:00
d882f05b82 Fix: Bicubic bump mapping does not work for UVs outside the 0,1 range.
This issue is caused by texelFetch which does not take wrapping options into account as it uses unnormalized uv coordinates to access a texel. A hack was made to do manual wrapping in the shader. This is acceptable because texture wrap mode is always treated as "repeat" elsewhere in 3D view in blender.

Thanks to Morten Mikkelsen for pointing out the cause of the issue and providing the fix.
2012-02-01 17:47:13 +00:00
6f46692e76 Fix bicubic map sampling to convert the sampled color to monochrome before using it to calculate the derivative. 2012-01-31 22:12:33 +00:00
9d3f5ea334 Fix #29715: cycles and glsl normal node not working correct. 2011-12-28 19:42:22 +00:00
6ccc605660 Bicubic bump map filtering.
This commit introduces bicubic bump map capabilities for the viewport for OpenGL 3.0+ capable GPUs. 

To use the functionality change the bump mapping method to "best quality"
Previous "best quality" setting becomes "medium quality" now.
For non OpenGL 3.0 GPUs this becomes the same as "medium quality"

Also:
* added tooltip descriptions to the bump method settings.
* modified the shader to ommit extraneous matrix multiplications for matrices already provided by OpenGL.

Bicubic shader by Morten Mikkelsen. Thanks a lot!

Oh...and FIRST!
2011-12-15 13:58:09 +00:00
b7db2587fb Cycles: fix glsl error when using light path node. 2011-12-01 19:31:36 +00:00
6673c76e78 Muting node patch: second part. Also fix [#27636] Muting shading nodes is ignored
Now, compositing, shading and texture nodes have a consistent muting system, with default behaving as previous (for compo), and which can be optionaly customized by each node.
Shader nodes are also GLSL muted.

However, Cycles is currently unaware of muted nodes, will try to address this…
2011-11-20 16:38:23 +00:00
e731ffb648 Cycles: Oren-Nayar BSDF support. This is not a separate shader node, rather it
is available through the Roughness input on the Diffuse BSDF.
http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes/Shaders#Diffuse

Patch by Yasuhiro Fujii, thanks!
2011-11-14 17:31:47 +00:00
74387f44af Fix #29252: GLSL not working with geometry material node after recent changes. 2011-11-14 12:47:47 +00:00
db75cc4cde Nodes: add cycles shader nodes, these will only be available to render engines
that use the new shading nodes system. Documentation:

http://wiki.blender.org/index.php/Doc:2.6/Manual/Render/Cycles/Nodes
2011-11-08 11:38:16 +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
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
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
d7c29a0310 since the introduction of 'newbump' blender
was exporting normal maps with red and green channel inverted
relative to the geometry it actually exports.

This change makes blender export normal maps 
which are very similar to most tools out there.

patch by Morten S. Mikkelsen
2011-02-23 11:58:36 +00:00
20553d4064 This commit will switch blender to use tangent space generated within
the two files mikktspace.h and mikktspace.c. These are standalone files
which can be redistributed into any other application and regenerate the
same tangent spaces. The implementation is independent of the ordering
of faces and the vertex ordering of faces.
2011-02-14 18:18:46 +00:00
1bfd780456 fix: latest shader wasn't working on itel gfx-cards
couldn't use 
a = ( float_function() < 0 )? b: c;
for whatever reason.
2011-02-08 13:40:54 +00:00
16160f5fcc GLSL shader part
bump-mapping update to properly support
multiple textures in different bump-spaces.
2011-02-07 21:57:40 +00:00
1b28e8c162 moved texture_space scaling factor from glsl to C. 2011-01-30 16:57:28 +00:00
d5da54e1e6 bugfix #25867
fix for objectspace bumpmapping
2011-01-30 16:24:23 +00:00
9400f4309a Fix for object-space bumpmapping in GLSL. Fix provided
by Morten Mikkelsen in IRC.
2011-01-30 14:43:24 +00:00
bcacaa3901 Fixes for GLSL bump code; it was using calls not supported for
older GLSL versions (< 1.3)

Thanks Matthew M:
- adding mat3 from ma4 function
- removal of transpose()

And I've hacked in myself a textureSize() replacement, the image
size gets passed on to function now.
2011-01-29 16:13:15 +00:00
50d434f2f4 matching 3Dview GLSL shaders for the new bumpmapping methods 2011-01-29 12:01:11 +00:00
dc3c979ac8 after discussion with brecht reverting this commit, will pass on feedback to the patch author 2010-08-06 18:40:05 +00:00
8c80f623f4 Committing Konrads GLSL preview of bumpmapping, now we no longer have the bizarre situation of being able to view the changes of the normal map but not of regular bump mapping 2010-08-06 17:42:47 +00:00
e2f5f4fa53 removing the f so that glsl shaders work on older cards 2010-08-03 22:44:15 +00:00
3f06cab75e Fix #23073: glsl and 3d view background color didn't take color managment into
account yet, should now be consistent with render.
2010-07-29 10:09:20 +00:00
196ecb7bab material shader curve factor (same as compo node) 2009-11-09 16:00:12 +00:00
952322e71c Fix #19632: GLSL was not updated for soft/linear light blending modes. 2009-10-19 11:50:01 +00:00
022a343223 Texture stack influences are now all separate values, and negative
mapped values now have their influence negated instead. Also a few
RNA changes for TextureSlot.

Bumped subversion for the version patch.
2009-10-01 17:15:23 +00:00
d8b9ca34a0 GLSL: small optimization if Use Alpha is disabled for textures. 2008-09-05 20:34:35 +00:00
2e653838c0 Bugfix for GLSL: no specular/diffuse + only shadow for lamps
didn't work correct.
2008-09-05 15:08:01 +00:00
cb89decfdc Merge of first part of changes from the apricot branch, especially
the features that are needed to run the game. Compile tested with
scons, make, but not cmake, that seems to have an issue not related
to these changes. The changes include:

* GLSL support in the viewport and game engine, enable in the game
  menu in textured draw mode.
* Synced and merged part of the duplicated blender and gameengine/
  gameplayer drawing code.
* Further refactoring of game engine drawing code, especially mesh
  storage changed a lot.
* Optimizations in game engine armatures to avoid recomputations.
* A python function to get the framerate estimate in game.

* An option take object color into account in materials.
* An option to restrict shadow casters to a lamp's layers.
* Increase from 10 to 18 texture slots for materials, lamps, word.
  An extra texture slot shows up once the last slot is used.

* Memory limit for undo, not enabled by default yet because it
  needs the .B.blend to be changed.
* Multiple undo for image painting.

* An offset for dupligroups, so not all objects in a group have to
  be at the origin.
2008-09-04 20:51:28 +00:00