Age | Commit message (Collapse) | Author |
|
renderer to raster strokes.
The render generated from Freestyle's data is currently stored in the original scene's render structure ( as 'freestyle_render'): when the render database is generated, the scene's geometrical data is first imported into Freestyle and strokes are calculated. The generated strokes are used to create a Blender scene, rendered independently. The render result is used in the rendering loop.
The final rendering is performed the same way edge rendering is, in a function ('freestyle_enhance_add') operating on each individual render part. Freestyle strokes are only included if the toggle button "Freestyle" (in the 'Output' panel) is active and if the "Freestyle" render layer is also selected. Freestyle's panel appears when the toggle button 'Freestyle' is active.
IMPORTANT: as of now, rendering ONLY works when OSA is disabled and when Xparts = Yparts = 1. If these settings are not set, a bogus image will be created.
To make the render happen, many modifications had to be made:
- the Canvas::Draw and Operators::create methods no longer render strokes. They only generate shading and locational information.
- a BlenderStrokeRenderer class was added to turn Freestyle's strokes into a Blender scene. Basically, the scene consists of strokes in their projected image 2D coordinates and an orthographic camera centered in the middle of the corresponding canvas. The scene is rendered using vertex colors, in shadeless mode (therefore, no lamp is needed). BlenderStrokeRenderer uses the old GLTextureManager to load textures (as required by the StrokeRenderer class), even though stroke textures are probably not supported (not tested). After the scene is rendered, it is safely and automatically discarded.
- AppCanvas' code was greatly reduced to the bare minimum. The former AppCanvas would use an OpenGL-based back buffer and z buffer to determine the scene's color and depth information. In the future, this data will be determined from the corresponding render passes. Currently, the integration is not achieved so all style modules using depth/color information are sure to fail.
- before, Freestyle needed an OpenGL context to determine the camera's information and to compute the view map. As of now, the modelview and projection matrices are fully determined using data provided by Blender. This means both perspective and orthographic projections are supported. The AppGLWidget will very soon be removed completely.
|
|
suggestive contours) and add corresponding UI controls to the Freestyle tab in the Scene buttons.
|
|
|
|
fixes a buffer overrun issue.
Kent
|
|
|
|
scratch array instead.
This is actually much safer than juggling values in the tmp union all the time.
|
|
Basically the code was referencing var[-1] it wasn't using it
but also did not need to be set in those cases. So I moved
the assignments so it skips the -1 case.
Kent
|
|
|
|
|
|
(disabled by default).
This is done to make merging make in trunk painless.
|
|
* #17900 - IK Constraint was not included regardless of what Visual-Keying method was used
* Deleting a Bone Group now corrects indices of those groups that occurred after the one that was deleted
* No more click-a-mania - Delete all vertex groups from a Mesh (Ctrl-Shift-G menu)
|
|
Error is bad enough to go for a retag... hrmf!
Report from Ernesto (der|kunstler) Mndez in irc. Thanks a lot!
|
|
even a bit more clear.
After this commit we'll tag svn (gasp!) and then go build!
|
|
- cleanup of boolean usage - use True and False now instead of 'true'/'false' or 0/1
- changed SConscripts accordingly
|
|
|
|
|
|
select/deselect and DAG_object_flush_update isnt needed for changed selections.
|
|
|
|
"Warning: binarysearch_bezt_index encountered invalid array" errors were being displayed in the console. Was caused by 3d-view show-keyframe for infostring stuff, when an IPO being checked had no keyframes.
|
|
- Adding constraint using button in panel still didn't update Armature Editing buttons properly.
- Minor code tidying of earlier bugfix for armatures
- 'For Transform' option for Limit constraints is now only taken into account for constraints that are enabled.
|
|
Second attempt at fixing this bug. Previous fix caused segfault when all bones in a chain are selected. Now it should segments which are selected (i.e. get swapped) will get unparented from segments that aren't (i.e. aren't swapped, so are still in old orientation)
|
|
Stop the infinite loop, but it could be loosing parent relations that it kept before. Aligorith needs to review.
|
|
when adding a new constraint using vertical layout.
|
|
|
|
|
|
the 'Mult' flag instead
- Tidied up comments in Action Editor code a bit
|
|
|
|
constraint/IK using the hotkeys.
|
|
strncpy for overlapping strings.
source/blender/blenlib/intern/fileops.c - zero length strings would check for a slash before the strings first char.
source/gameengine/GameLogic/SCA_JoystickSensor.cpp - m_istrig_prev was not initialized
source/blender/src/editmesh.c - active face pointer was not set to NULL in free_editMesh()
|
|
|
|
'show pivot' drawing in the viewport. Also added checks for some other
cases where this could happen.
|
|
due to poor float-to-char conversion.
|
|
view needs to be reset while moving to take care of view snapping properly.
|
|
|
|
code, causing the "SamplesY" button to overlap others.
|
|
Index OB pass didn't support FSA for Ztransp.
Also made buttons to set black/white for non-RGBA images hide in Image Window,
the Curves color code only supports 4 channels atm.
|
|
When Action Editor was maximised, Grease Pencil data disappeared. This was due to the screen-swapping that went on. Now, it uses the old-screen that was stored in the maximised Action Editor's screen (should be safe...)
|
|
* Onion-skinning with GStep > 0 was not showing enough of a noticable difference between ghosts. Improved method of calculating this.
* Clicking in a Grease-Pencil datablock channel in the Action Editor would crash
|
|
|
|
- insert key crashed when object ipo was in action, but action got unlinked
from object
|
|
This fixes (works around):
[#13598] LOAD / SAVE: Segfault after attempting to load surround encoded file
|
|
drawing object names in 3d window, zbuffered mode, didn't show up.
|
|
Additional sculpt mode hotkeys to toggle Smooth stroke (Shift S) and Anchored brush (Shift A) . Menus are updated with hotkeys too. This is a real last minute one, but it was given the ok previously, and I've just had time to commit this for him.
|
|
Grease Pencil panel in Sequencer and Nodes were not able to be minimised.
|
|
- Eraser now works in Sequence Editor. Cleaned up the code that handles Sequencer coordinate-conversions so that it should be a bit faster (doesn't need to recalculate offsets+scaling for every point that is made).
- Fixed mistake made in previous commit that made the pressure value (for tablets) an integer instead or a float. This should solve some of the reports of bits of strokes being missed on tablets.
|
|
|
|
previous commit, because it was causing performance issues for the game engine, apparently still is needed to solved issues with FSAA. Now instead it will still call this for blender but not anymore for blenderplayer.
|
|
Copy and paste error. Was using ob-ipo instead of conchan->ipo
|
|
* Fix for #17808: Can't compile using SunCC - gpencil.c uses DOS line endings.
Added some svn-properties on gpencil files and also keyframing ones that I added, so that this shouldn't be a problem anymore.
* In Node Editor, it is now possible to close an open Grease Pencil panel when there is no node-tree being shown (i.e. after switching between node editing modes)
|
|
fixed tooltip for delay sensor - delay is in tics not frames
|