Commit Graph

1027 Commits

Author SHA1 Message Date
Joshua Leung
415868b5e2 Fix for gcc compiler warning about a call to do_lamp_tex() resulting in "overflow in implicit constant conversion" 2008-09-20 09:17:40 +00:00
Diego Borghetti
4f737bafa7 == Render ==
Commit patch #7788, allow to set the render step, so it's
possible make render every N frames only.

The step is change in Scene buttons (F10), below start and
end frame buttons.

Also add a command line options (-j), so it's possible to
overwrite the file step (useful for renderfarm).

[ Brecht, this work with OpenGL renders and simulated
  the skipped frames, please double check ]
2008-09-19 21:57:15 +00:00
Ton Roosendaal
65ddef19b9 Patch #13422, By Roland Hess, Shadow Color
Finally, after a long time new render candy for the non-game peoples! :)

Good doc is here: (url splits in two)
http://www.harkyman.com/2008/08/06/controllable-shadow-intensity-
and-color/

Note the colorpicker for shadow is in "Shadow and Spot" panel. A bit
hidden, could get more attention. For later. :)
2008-09-19 16:01:22 +00:00
Ton Roosendaal
3ac4cffdd0 Bugfix #14033
Option for Image render "Clip" gave wrong alphas on the edge of image.
2008-09-11 16:50:34 +00:00
Ton Roosendaal
d5839f21ab Bugfix 12478
Border render didnt work for ANIM render.
2008-09-11 16:37:53 +00:00
Brecht Van Lommel
be19db6854 Fix for bug #12132: vector blur with fast moving objects does
not give a smooth fallof. there's no correct fix possible due
to a lack of information, but this manually adds a smoother
falloff, overestimating the contribution of foregroud pixels
instead of becoming transparent.
2008-09-09 17:27:01 +00:00
Brecht Van Lommel
160c0de87b Fix for bug #17580: crash rendering instanced objects with
halo material attach to the object instead of the mesh.

Also for bug #13489: avoid a crash rendering with invalid
active vcol layer, most likely caused by a bug that was
already fixed.
2008-09-09 14:16:54 +00:00
Ton Roosendaal
ad31f6a4b3 Bugfix #13675
Edge render made star render disappear. Wrong Z value comparing...
(2 year old bug!)
2008-09-09 11:40:29 +00:00
Ton Roosendaal
8569a78cbb bugfix 17527
Halo render: lines and rings were not using random anymore... got lost
in particle upgrade of pre-peach. Tsk!
2008-09-07 17:13:05 +00:00
Ton Roosendaal
a14d7c9b7d Bugfix #17497
FSA didn't support "key alpha", fixed it.
Also noticed edge-enhance didnt work for FSA, added warning for that,
fixing it is too clumsy, this option belongs in compositor.
2008-09-07 13:15:44 +00:00
Brecht Van Lommel
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
Daniel Genrich
0b523ac3e6 Particle System: a) Fixing visibility bug when a duplipart-system was deleted it didn't show up in during render any more, b) fixing possible crash during render 2008-08-26 01:07:18 +00:00
Daniel Genrich
fd0072e77c Win64: please check my changes if you ran across them ;) But should be fine since no additional crashes were reported! 2008-08-17 17:08:00 +00:00
Matt Ebb
04b90467c3 * Fix for a bug zanqdo reported in IRC - transparent shadows were not
getting correct alpha when cast through node materials - in fact the 
node tree wasn't being shaded at all.
2008-08-11 05:23:36 +00:00
Janne Karhu
0c9508d248 Fix for [#17366] Particle children from particles only take colour from UV-Maps
-Some old code in particle rendering hadn't been updated properly.
2008-08-04 13:57:04 +00:00
Ton Roosendaal
89f2a63ecd Bugfix #8182
Specular render in Blender still had terminator problems... only the diffuse
part got "phong correction" applied. I didn't fix this before to not change
rendering results just before the release. Now there's time I hope?

Render results should only differ minimal, and only visible for low spec
hardness values (like 1 or 2)
2008-07-20 10:09:19 +00:00
Hamed Zaghaghi
3b8ed8910a Bug Fix #17337, now atmosphere works correctly with FSA enabled 2008-07-16 08:10:23 +00:00
Ton Roosendaal
0022222b05 Bugfix #17323
Ztransp OSA render did not include z values anymore in pass... this is
not good Z anyway (aliased), but at least it's back now.

Note: for composites using Z values: use FSA for superior results.
2008-07-14 09:37:06 +00:00
Brecht Van Lommel
7971d7c9f3 Fix for bug #14665: stars not working in 3D view. 2008-07-10 16:29:42 +00:00
Benoit Bolsee
70d239ef7d BGE logic update: new servo control motion actuator, new distance constraint actuator, new orientation constraint actuator, new actuator sensor.
General
=======
- Removal of Damp option in motion actuator (replaced by
  Servo control motion).
- No PyDoc at present, will be added soon.

Generalization of the Lvl option
================================
A sensor with the Lvl option selected will always produce an 
event at the start of the game or when entering a state or at 
object creation. The event will be positive or negative 
depending of the sensor condition. A negative pulse makes
sense when used with a NAND controller: it will be converted
into an actuator activation.

Servo control motion
====================
A new variant of the motion actuator allows to control speed 
with force. The control if of type "PID" (Propotional, Integral, 
Derivate): the force is automatically adapted to achieve the 
target speed. All the parameters of the servo controller are
configurable. The result is a great variety of motion style: 
anysotropic friction, flying, sliding, pseudo Dloc...
This actuator should be used in preference to Dloc and LinV
as it produces more fluid movements and avoids the collision 
problem with Dloc.
LinV : target speed as (X,Y,Z) vector in local or world 
       coordinates (mostly useful in local coordinates).
Limit: the force can be limited along each axis (in the same
       coordinates of LinV). No limitation means that the force
       will grow as large as necessary to achieve the target 
       speed along that axis. Set a max value to limit the 
       accelaration along an axis (slow start) and set a min
       value (negative) to limit the brake force.
P:     Proportional coefficient of servo controller, don't set
       directly unless you know what you're doing.
I:     Integral coefficient of servo controller. Use low value
       (<0.1) for slow reaction (sliding), high values (>0.5)
       for hard control. The P coefficient will be automatically
       set to 60 times the I coefficient (a reasonable value).
D:     Derivate coefficient. Leave to 0 unless you know what
       you're doing. High values create instability. 

Notes: - This actuator works perfectly in zero friction 
         environment: the PID controller will simulate friction
         by applying force as needed.
       - This actuator is compatible with simple Drot motion
         actuator but not with LinV and Dloc motion.
       - (0,0,0) is a valid target speed.
       - All parameters are accessible through Python.

Distance constraint actuator
============================
A new variant of the constraint actuator allows to set the
distance and orientation relative to a surface. The controller
uses a ray to detect the surface (or any object) and adapt the
distance and orientation parallel to the surface.
Damp:  Time constant (in nb of frames) of distance and 
       orientation control.
Dist:  Select to enable distance control and set target 
       distance. The object will be position at the given
       distance of surface along the ray direction.
Direction: chose a local axis as the ray direction.
Range: length of ray. Objecgt within this distance will be 
       detected.
N    : Select to enable orientation control. The actuator will
       change the orientation and the location of the object 
       so that it is parallel to the surface at the vertical
       of the point of contact of the ray.  
M/P  : Select to enable material detection. Default is property
       detection.
Property/Material: name of property/material that the target of
       ray must have to be detected. If not set, property/
       material filter is disabled and any collisioning object
       within range will be detected.
PER  : Select to enable persistent operation. Normally the 
       actuator disables itself automatically if the ray does
       not reach a valid target. 
time : Maximum activation time of actuator. 
       0 : unlimited.
       >0: number of frames before automatic deactivation.  
rotDamp: Time constant (in nb of frame) of orientation control.
       0 : use Damp parameter.
       >0: use a different time constant for orientation.

Notes: - If neither N nor Dist options are set, the actuator
         does not change the position and orientation of the
         object; it works as a ray sensor.
       - The ray has no "X-ray" capability: if the first object
         hit does not have the required property/material, it
         returns no hit and the actuator disables itself unless
         PER option is enabled.
       - This actuator changes the position and orientation but
         not the speed of the object. This has an important 
         implication in a gravity environment: the gravity will
         cause the speed to increase although the object seems
         to stay still (it is repositioned at each frame).
         The gravity must be compensated in one way or another.
         the new servo control motion actuator is the simplest 
         way: set the target speed along the ray axis to 0
         and the servo control will automatically compensate 
         the gravity.
       - This actuator changes the orientation of the object 
         and will conflict with Drot motion unless it is 
         placed BEFORE the Drot motion actuator (the order of 
         actuator is important)
       - All parameters are accessible through Python.

Orientation constraint 
======================
A new variant of the constraint actuator allows to align an
object axis along a global direction.
Damp : Time constant (in nb of frames) of orientation control.
X,Y,Z: Global coordinates of reference direction. 
time : Maximum activation time of actuator. 
       0 : unlimited.
       >0: number of frames before automatic deactivation.  

Notes: - (X,Y,Z) = (0,0,0) is not a valid direction
       - This actuator changes the orientation of the object
         and will conflict with Drot motion unless it is placed
         BEFORE the Drot motion actuator (the order of 
         actuator is important).
       - This actuator doesn't change the location and speed. 
         It is compatible with gravity.
       - All parameters are accessible through Python.

Actuator sensor 
===============
This sensor detects the activation and deactivation of actuators 
of the same object. The sensor generates a positive pulse when 
the corresponding sensor is activated and a negative pulse when 
it is deactivated (the contrary if the Inv option is selected). 
This is mostly useful to chain actions and to detect the loss of 
contact of the distance motion actuator.

Notes: - Actuators are disabled at the start of the game; if you
         want to detect the On-Off transition of an actuator 
         after it has been activated at least once, unselect the
         Lvl and Inv options and use a NAND controller.
       - Some actuators deactivates themselves immediately after 
         being activated. The sensor detects this situation as 
         an On-Off transition.
       - The actuator name can be set through Python.
2008-07-04 08:14:50 +00:00
Hamed Zaghaghi
7e7791755a Sun,Sky and atmosphere for lamps(sun type), PATCH#8063 http://projects.blender.org/tracker/?func=detail&atid=127&aid=8063&group_id=9 2008-07-03 10:38:35 +00:00
Campbell Barton
8b9503e0ec bugfix [#14796] -t <threads> command line switch doesn't work unless FIXED_THREADS has previously been turned on
Command line threads now override blendfile setting in background mode.
Command line Threads greater then 8 are now clamped.
2008-06-23 16:47:15 +00:00
Brecht Van Lommel
3f488f4d70 * Fix for a crash in game engine vertex array drawing with texfaces.
* For 2D filters, don't require opengl 2.0 but just the extensions,
  so it works on computers without full 2.0 support too.
* In debug mode, don't print memory statistics for preview render.
2008-06-18 10:30:14 +00:00
Campbell Barton
9c2bf9bdbc bugfix for memory corruption caused by BLI_cleanup_file on paths that went too far back.
/a/b/../../../ - problematic
/a/b/c/../../../ - ok
Also got rid of warnings in shadbuf.c with GET_INT_FROM_POINTER
2008-06-14 16:54:46 +00:00
Campbell Barton
a2192ffa09 made the quad split-direction options force splitting since planer quads with UV distortion would get very different results depending on the split direction. 2008-06-07 22:44:18 +00:00
Campbell Barton
49abcc980c Added shadow baking 2008-06-05 22:07:59 +00:00
Campbell Barton
f2407fec55 Apricot feature, thats fit for trunk.
Baking would split non-planer quads in an unpredictable way, which is fine for rending but game engines often use a fixed order (0,1,2), (0,2,3) or (1,2,3) (1,3,0).
Added an option to use a fixed order when baking.
2008-06-05 18:26:34 +00:00
Kent Mein
791510f690 This is patch [#9057] Updated doc string to match current defines
also submitted by gsr

It just updates a comment to correct values.

Kent
2008-05-30 19:52:42 +00:00
Brecht Van Lommel
d49d0e174e Small fix for last AO sphere sampling bugfix, didn't update
random sampling code as well.
2008-05-28 17:42:03 +00:00
Campbell Barton
c6668755ff bugfix for baking AO with greater then 16 samples, since it was being clamped in sphere_sampler but not in ray_ao_spheresamp that calls it. giving uneven art deco
results.
2008-05-28 17:13:15 +00:00
Campbell Barton
b36a358c1b bugfix
* python api render() would clamp the endframe to a short.
* python api's render() and renderAnim() would not render compositing because the name they gave to RE_NewRender was NOT G.scene->id.name, added comments to 
G.scene->id.name
2008-05-28 00:44:41 +00:00
Brecht Van Lommel
4fd54681fc Fix for #12526: still didn't get dupli transform in envmaps correct. 2008-05-27 11:05:33 +00:00
Brecht Van Lommel
02c4866d04 Fix for bug #12526: object instancing didn't restore matrices
correct for envmap, could give objects rendering in the wrong
position.
2008-05-23 10:06:06 +00:00
Brecht Van Lommel
1b00877051 Fix for bug #12077: tangent shading (which only affects specular) made
bump mapping not work for diffuse.
2008-05-22 15:30:35 +00:00
Brecht Van Lommel
5cf41da316 Fix for bug #12334: the Disable Tex option didn't disable
textures for the Texface material option.
2008-05-22 13:46:05 +00:00
Martin Poirier
ff84d868a1 [#11706] Camera IPO Lag
Broken in revision 14473

Camera IPO needs a special exception to be done earlier than others, that was removed in that revision.

I added a better comment to make sure nobody removes it again, unless they really understand what's happening.
2008-05-16 10:20:30 +00:00
Brecht Van Lommel
1e1ece8025 Fix for bug #11682: active render vertex color not respected correctly. 2008-05-16 09:55:09 +00:00
Brecht Van Lommel
a6e18574b8 Fix for bug #11650: removing uv layers in editmode did not work correct.
Fix for bug #11661: bake to viewport uv layer instead of render uv layer.
2008-05-15 19:40:09 +00:00
Campbell Barton
d1b04a3a9d forgot to use the thread setting function for rendering. (was only used for baking) 2008-05-14 16:49:33 +00:00
Campbell Barton
540c0e0795 uvcalc_lightmap would raise an error on meshes with no faces.
auto-threads wasnt working for baking.
2008-05-14 16:40:25 +00:00
Campbell Barton
ac71783e8d last commit had a typo, also adjusted teh and colour instances 2008-05-12 21:12:10 +00:00
Brecht Van Lommel
90420a15ef Fix for bug #7068: displace node crashes with procedural
texture input as vectors.
2008-05-09 15:32:55 +00:00
Brecht Van Lommel
3527c10065 Fix for bug #10932: area light bug, points behind the lamp could
also get lit.
2008-05-07 20:24:06 +00:00
Brecht Van Lommel
529a8bb949 Fix for bug #10990: edge render AA issue. 2008-05-07 14:58:33 +00:00
Brecht Van Lommel
95ed34be4a Fix for bug #10444: environment map crash with qmc. 2008-05-05 17:43:13 +00:00
Campbell Barton
110f927c63 Changed frame numbering to only alter hashes if they are in the filename (not the directory name) to fix bug [#10566] File Open Dialog replaces '#' with '0' in directory names.
removed frame numbering from BLI_convertstringcode into its own function (BLI_convertstringframe), many uses of BLI_convertstringcode were passing dummy frames values anyway.
in cases where adding the current frame number to a filename is needed run BLI_convertstringframe(...) after BLI_convertstringcode(...)

There are some cases Im not sure BLI_convertstringframe is needed, these have been commented as todo, but at least have the same functionality they used to.
2008-05-04 09:41:15 +00:00
Brecht Van Lommel
e997e6b1fc Fix for bug #8963: there was still an issue with SSS and transparency
in the shading because of ramps.
2008-04-30 12:02:09 +00:00
Brecht Van Lommel
4be6ef5758 Fix for bug #8910: FSA + spotlight halo not working correct together. 2008-04-29 19:51:23 +00:00
Brecht Van Lommel
17d83bfefb Fix for octree filling print when rendering, the counter was per object,
now counts all faces as it did before.
2008-04-29 15:19:58 +00:00
Brecht Van Lommel
d5bfb1b6d9 Fix for bug #8949: diffuse tangent shading did not use correctly
normalized normal. Patch by André Pinto, thanks!
2008-04-29 13:51:47 +00:00