Revision 38a80ff by Benoit Bolsee September 24, 2008, 22:58 (GMT) |
BGE patch: add advanced parameters for SoftBody. Add Rasterizer.drawLine() Python function. |
Revision 48bc5b2 by Joshua Leung September 24, 2008, 11:52 (GMT) |
Made Object-level copy constraints work the same as for bones now too |
September 24, 2008, 07:49 (GMT) |
* Moved the sample location for shading to the middle of the volumetric step. This fixes a nagging bug that would cause noise/odd moire-ish patterns, due to raytrace numerical errors: http://mke3.net/blender/devel/rendering/volumetrics/vol_clouds_moire.jpg |
September 24, 2008, 07:38 (GMT) |
Volumetrics: * Now it's possible to render with the camera inside a volume. I'm not sure how this goes with overlapping volumes yet, will look at it. But it allows nice things like this :) http://mke3.net/blender/devel/rendering/volumetrics/clouds_sky.mov * Sped up shading significantly by not doing any shading if the density of the current sample is less than 0.01 (there's nothing to shade there anyway!) Speeds up around 200% on that clouds scene. * Fixed a bug in global texture coordinates for volume textures |
Revision 3b09c0b by Erwin Coumans September 24, 2008, 03:12 (GMT) |
Created a KX_SoftBodyDeformer for real-time soft bodies. Added SetDeformer/GetDeformer() to KX_GameObject. Store mapping between graphics/soft body vertices (work-in-progress) Real-time soft body integration is still very premature, but for a quick preview, see this testfile: http://bulletphysics.com/ftp/pub/test/index.php?dir=blender/&file=soft_test.blend |
September 24, 2008, 02:52 (GMT) |
* Volumetrics scene integration Now other objects (and sky) correctly render if they're partially inside or behind a volume. Previously all other objects were ignored, and volumes just rendered on black. The colour of surfaces inside or behind the volume gets correctly attenuated by the density of the volume in between - i.e. thicker volumes will block the light coming from behind. However, other solid objects don't receive volume shadows yet, this is to be worked on later. http://mke3.net/blender/devel/rendering/volumetrics/vol_inside_behind.png Currently this uses raytracing to find intersections within the volume, and rays are also traced from the volume, heading behind into the scene, to see what's behind it (similar effect to ray transp with IOR 1). Because of this, objects inside or behind the volume will not be antialiased. Perhaps I can come up with a solution for this, but until then, for antialiasing, you can turn on Full OSA (warning, this will incur a slowdown). Of course you can always avoid this by rendering volumes on a separate renderlayer, and compositing in post, too. Another idea I've started thinking about is to calculate an alpha value, then use ztransp to overlay on top of other objects. This won't accurately attenuate and absorb light coming from objects behind the volume, but for some situations it may be fine, and faster too. |
Revision 7eae8d0 by Daniel Genrich September 24, 2008, 01:39 (GMT) |
Patch #17675: Tooltips for fluid control panel - provided by Kai Kostack |
Revision 7c94eed by Daniel Genrich September 24, 2008, 00:23 (GMT) |
Fixing compile warnings |
Revision 005c5e6 by Benoit Bolsee September 23, 2008, 20:07 (GMT) |
BGE bug #17657 fixed: dRotY doesn't work properly after 90 degrees rotation. This problem is caused by discontinuities in the conversion orientation matrix -> euler angles: the angle sign can switch and thus the direction of the rotation produced by the dRot Ipo. To avoid this bug, the matrix->euler conversion must be avoided during the game. I took the following approach that is compatible with Blender (identical effect in the game and in the 3D view): - no change in Add mode: Rot and dRot are treated as additional rotation to the orientation at the start of the Ipo. There is no matrix->euler conversion and thus no discontinuities. - Rot Ipo are treated as absolute rotation. All 3 axis should be specified but if they are not, the startup object orientation will be used to set the unspecified axis. By doing a matrix-> euler conversion once at the start, the discontinuities are avoided. If there are also dRot curves, they are treated as delta of the corresponding Rot curve or startup angle. - dRot Ipo are treated as Add mode in Local axis. Note about Add mode: Rot and dRot curves are treated identically during the game. However, only dRot curves make sense because they don't interfere with the object orientation in the 3D view. |
Revision 3cf87f4 by Campbell Barton September 23, 2008, 15:57 (GMT) |
calculate curve radius for drawing curve normals |
Revision bd85367 by Campbell Barton September 23, 2008, 15:21 (GMT) |
disable magnification filtering when mipmap is off. useful for texture low poly models. |
Revision 2ad14ba by Andre Susano Pinto September 23, 2008, 14:32 (GMT) |
Changed SimpleDeform to be a single modifier with (Twist|Bend|Taper|Strech) options available on the modifier painel/options. |
Revision d72d4a5 by Campbell Barton September 23, 2008, 13:35 (GMT) |
fix for [#11744] NurbCurve Radius incorrect removed calc_curve_subdiv_radius(), curve radius is now calculated the same way as tilt. Added radius interpolation menu matching tilt interpolation, needed to add "Ease" interpolation type to keep 2.47 curves looking the same. |
Revision 47032c2 by Janne Karhu September 23, 2008, 12:53 (GMT) |
- Particle-particle effectors we're quite unstable and not accurate at all. Now this should be fixed (especially with other integrators than euler) as the needed inter-frame effector particle positions are interpolated properly from the current and previous positions (previously only the most recent position was used). - In practice this removes the dependency of particle simulations from the update order of objects and different particle systems inside objects. - As a nice side effect out of this we also get fully correct birth positions for "near reactor particles" (previously for example smoke trail reactor particles were not born smoothly along the target particles path). |
Revision a55d591 by Janne Karhu September 23, 2008, 11:51 (GMT) |
"Fix" for [#17671] Particles spin out of control and pass through when hitting collision object -The fix is that particle random size factor should never ever be bigger than 1.0, else negative sizes are possible! Don't know who to blame, but probably my self :) -The second issue of passing through the deflection and rotating wildly around strange centers is not a bug, but for particles the group and object visualization objects have to be centered on the global origin. I'll probably make an option later to use the object center, but this is how things are for now. |
September 23, 2008, 08:00 (GMT) |
* bugfix, old files (including default cube) weren't loading up with correctly initialised volume settings |
September 23, 2008, 07:44 (GMT) |
* Refactored the volume texture code. Seems to go ok so far, stress tests and all my old files render fine, but anyone feel free to let me know if you find a bug in this :) Should be a bit faster too, this file renders in about 60% of the time it did before (http://mke3.net/blender/devel/rendering/volumetrics/vol_col_emit.mov) |
September 23, 2008, 07:05 (GMT) |
* Volume colour absorption Rather than a single absorption value to control how much light is absorbed as it travels through a volume, there's now an additional absorption colour. This is used to absorb different R/G/B components of light at different amounts. For example, if a white light shines on a volume which absorbs green and blue components, the volume will appear red. To make it easier to use, the colour set in the UI is actually the inverse of the absorption colour, so the colour you set is the colour that the volume will appear as. Here's an example of how it works: http://mke3.net/blender/devel/rendering/volumetrics/vol_col_absorption.jpg And this can be textured too: http://mke3.net/blender/devel/rendering/volumetrics/vol_absorb_textured.png Keep in mind, this doesn't use accurate spectral light wavelength mixing (just R/G/B channels) so in cases where the absorption colour is fully red green or blue, you'll get non-physical results. Todo: refactor the volume texturing internal interface... |
Revision bcba800 by Campbell Barton September 23, 2008, 06:26 (GMT) |
changing the number of subdivisions for nurbs curves. this way each edge/segment gets the same number of points matching the resolution value. before, a nurbs curve would have the same number of points no matter if it was cyclic or not. This will make slight changes to objects on an animated path, but only noticable if the path has a low resolution. bug [#11744] NurbCurve Radius incorrect - now dosnt show bad results with order 4 on non-cyclic curve. |
Revision d2d56e3 by Erwin Coumans September 23, 2008, 05:00 (GMT) |
bugfix for [#7006] Sleeping Objects losing Ghost Constraint Bullet logic bug in (de)activation/island management: deactivated 'fantom' objects do merge islands, in particular when connected by constraints. (fantom = object with collision detection but no collision response). |
|