Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 5501 / 5574

December 26, 2003, 20:12 (GMT)
Commit of cursor framework. Cursors now defined in source/blender/src/cursors.c and
source/blender/include/BIF_cursors.h. Allows large cursors on Win32 and X11.
See cursors.c for documentatioin on how to use.
December 24, 2003, 19:05 (GMT)
- improved filling in faces in octree, resulting in less nodes and
branches. Especially larger faces give result. Rendering times go down
with an average of 10%. My reference testfile went down from 30.4 to
27.9 seconds.
Revision e9a6c2d by Kent Mein
December 24, 2003, 16:44 (GMT)


Dan Sinclair's patch to add --version or -v to blender's command line options.

Kent
December 24, 2003, 16:18 (GMT)
- fixed bug in shaded view mode (SHIFT+Z) when it tried to calculate
reflection normals... NULL pointer reference.
(thanks Desoto!)
December 24, 2003, 11:44 (GMT)
- only cosmetic stuff; result of going over the output of mipspro cc
compile round. Wrong prototypes, unused variables, zealot const usage,
and in action.c fixed insane & unreadable function call syntax.
December 23, 2003, 22:31 (GMT)
- Fresnel V4.0

Based on feedback (thnx phase!) I found a big disadvantage of the 'real'
fresnel formula. It doesnt degrade to 0.0, causing 2-3 times too many
rays being fired compared to the previous one. So; a lot slower.

Now committed is a hybrid which allows (close to) real, and nice artistic
freedom, *and* it really goes to 0.0 and 1.0, assisting nicely in optimal
render times.
A real doc how it works (with pics) will be made before real release.

- Fixed bug in raytrace: the first renderpass didn't use fresnel for mirror.
- Fixed bug in previewrender, now it closer matches how fresnel renders
December 23, 2003, 19:03 (GMT)
Fixed bevel width preview drawing which draws the correctly with higher recursion level (it was incorrect for anything higher than 2).
Also commented out a couple of unused variables that were shouting warnings (and we all love the lack of warning and the couple of extra free bytes) :)
December 22, 2003, 22:27 (GMT)
- another fresnel improvement. :)
At last irc meeting, eeshlo pointed to an error in the code. It didn't
use the IOR value correctly. This has been solved. So how it works now:
- the IOR button value influences (very subtle) the fresnel effect.
Only for realism diehards.
- the Fresnel value (slider) now denotes the power in the function
rf + (1-rf) * (1-c)^5
where rf= rf = ((ior-1)/(ior+1))^2
and c the dot-product ray/normal.
- so, set the slider at '5' and you have real fresnel. Lower values
for interesting artistic effects.

- put back the forgotten code for gaussian corrected sampling during
antialising render. Normally, each sub-pixel sample in Blender counts
equally, and together make up the pixel color.
With 'Gauss' option set (F10 menu) each sub-pixel sample creates a small
weighted mask with variable size, which (can) affect neighbouring pixels
as well. The result is smoother edges, less sensitive for gamma, and
well suited to reduce motion-aliasing (when things move extreme slow).
This is result of *long* period of research in NeoGeo days, and based on
every scientific sampling/reconstructing theory we could find. Plus a
little bit of our selves. :)

- I should write once how blender constructs Jitter tables for sub-sampling.
this is a very nice method, and superior to normal block filter or random
jittering... time!
December 21, 2003, 23:38 (GMT)
- fixes for the stubs, to make sure blenderplayer compiles.
error was caused by moving render calls to render module... but some
are still called in blender kernel...
December 21, 2003, 22:57 (GMT)
- globals were defined double... showed up thanks to warning of irix
compiler!
Revision 80622fc by Roel Spruit
December 21, 2003, 22:43 (GMT)
updated msvc projectfiles: added texture.c and removed some others..
December 21, 2003, 22:38 (GMT)
- moved render.h struct back to beginning of file...
December 21, 2003, 22:31 (GMT)
- brought back to render.h includes... ifdef SGI and Windows...
December 21, 2003, 22:23 (GMT)
- removed render.h from this file.
December 21, 2003, 21:52 (GMT)
Phew, a lot of work, and no new features...

Main target was to make the inner rendering loop using no globals anymore.
This is essential for proper usage while raytracing, it caused a lot of
hacks in the raycode as well, which even didn't work correctly for all
situations (textures especially).

Done this by creating a new local struct RenderInput, which replaces usage
of the global struct Render R. The latter now only is used to denote
image size, viewmatrix, and the like.

Making the inner render loops using no globals caused 1000s of vars to
be changed... but the result definitely is much nicer code, which enables
making 'real' shaders in a next stage.
It also enabled me to remove the hacks from ray.c

Then i went to the task of removing redundant code. Especially the calculus
of texture coords took place (identical) in three locations.
Most obvious is the change in the unified render part, which is much less
code now; it uses the same rendering routines as normal render now.
(Note; not for halos yet!)

I also removed 6 files called 'shadowbuffer' something. This was experimen-
tal stuff from NaN days. And again saved a lot of double used code.

Finally I went over the blenkernel and blender/src calls to render stuff.
Here the same local data is used now, resulting in less dependency.
I also moved render-texture to the render module, this was still in Kernel.
(new file: texture.c)

So! After this commit I will check on the autofiles, to try to fix that.
MSVC people have to do it themselves.
This commit will need quite some testing help, but I'm around!
December 20, 2003, 13:46 (GMT)


Fixed the call to CalcNormFloat to use neweve[]->co.

Goofster: The difference between you and Ton reporting the problem was
that he actually took the time to analyze the warning and pin down the
problem, while your "hahaha, your code has a warning!" didn't really
help me a lot in the first place.
December 19, 2003, 15:23 (GMT)
More render stuff:

- added 'Mapping to" channel "RayMirror", to control mirror with texture
- fixed bug in using mirror-rgb as texture channel... this is cumbersome
because it is abused by Envmap in a not nice way. Fixing the abuse will
cause compatibility errors, which can be fixed when we up release # to
2.32.

- added "Translucency", which is nothing else than allowing another
shading pass for the backside of a face (with normal inverted). This
is interesting for all kinds of situations where you want light from
behind to 'shine through'. Also works to reduce dark areas in
unlighted parts of rendering transparent faces. Light from behind on
transparent red window should make it glowing some, right?!
- added texture channel for this as well

- Reorganized Material Panels to reveil some consistancy where buttons
can be found. Not perfect yet, but at least all options for Shaders and
options for Mirror & Transparency now are together.
This gives some space in Shader Panel for nice expansion.
Revision 2cac5e0 by Matt Ebb
December 19, 2003, 12:07 (GMT)
Updated the Mac OS X blender file icon with standard background and xype's nice shiney blender logo
Revision 0468a78 by guignot
December 18, 2003, 21:45 (GMT)
Bug fixes (sigh...)
December 18, 2003, 21:34 (GMT)
another trace commit

- implemented tracing of transparency for shadows. This is a material
option, in the new RayTrace panel.
it only traces color and alpha, not shading. So the results of some
transparant colored unlit faces can look odd. I will look onto that.
- changed fresnel formula (got hint from eeshlo!). this simplifies the UI,
now only one button needed. The fresnel value "should" be identical as
the refraction index, but that is booooring! So i added a special fresnel
refraction slider for both mirroring and transparency. By setting all 3
sliders equal, you get 'realism'.
- fresnel for transparancy works for Ztra rendering too. Same for transpa-
rent shadow. But then you need to set 'ray' on in F10 menu.
- uploaded new monkey_glass blend in download.blender.org/demo/test/

Next stage: killing the globals from render, and implement "translucency"
which is effectively allowing faces being lit from behind, as paper or
cloth.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021