vrm.git
14 years agoFix camera type selection for blender > 2.43
Antonio Ospite [Sat, 24 Feb 2007 09:18:14 +0000 (10:18 +0100)]
Fix camera type selection for blender > 2.43

Reported-by: Thomas Lachmann <tl@automatic-brain.de>
Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoDo obj clipping using bounding box
Antonio Ospite [Tue, 20 Feb 2007 19:06:47 +0000 (20:06 +0100)]
Do obj clipping using bounding box

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoImplement proper View Frustum clipping
Antonio Ospite [Sun, 18 Feb 2007 22:41:35 +0000 (23:41 +0100)]
Implement proper View Frustum clipping

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoPDF output writer
Antonio Ospite [Sat, 17 Feb 2007 18:15:27 +0000 (19:15 +0100)]
PDF output writer

 * Use fps as specified in blender when VectorWriter handles animation
 * PDF output (using reportlab)
 * Remove the real file opening in the abstract VectorWriter
 * Fix another problem in the animation code the current frame was off
   by one

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd a Point in Polygon routine
Antonio Ospite [Wed, 24 Jan 2007 16:11:28 +0000 (17:11 +0100)]
Add a Point in Polygon routine

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd an HSR helper class
Antonio Ospite [Tue, 23 Jan 2007 22:58:07 +0000 (23:58 +0100)]
Add an HSR helper class

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoSWF output support
Antonio Ospite [Sat, 20 Jan 2007 14:55:13 +0000 (15:55 +0100)]
SWF output support

 * Initial SWF output support
 * Fixed a bug in the animation code, now the projection matrix is
   recalculated at each frame!

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoCleanup Newell's algorithm implementation
Antonio Ospite [Wed, 17 Jan 2007 22:34:39 +0000 (23:34 +0100)]
Cleanup Newell's algorithm implementation

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoOther fixes to the Newell's algorithm implementation
Antonio Ospite [Sun, 14 Jan 2007 09:48:50 +0000 (10:48 +0100)]
Other fixes to the Newell's algorithm implementation

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoFixes to Newell algorithm implementation
Antonio Ospite [Fri, 12 Jan 2007 12:04:15 +0000 (13:04 +0100)]
Fixes to Newell algorithm implementation

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd test 5 of Newell algorithm
Antonio Ospite [Sat, 6 Jan 2007 16:50:46 +0000 (17:50 +0100)]
Add test 5 of Newell algorithm

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoNew experimental HSR routine
Antonio Ospite [Wed, 3 Jan 2007 11:37:10 +0000 (12:37 +0100)]
New experimental HSR routine

 * Use some topology cache to speed up calculations
 * Use python's xrange() instead of range(), should be faster
 * Implement progress indicator functionality
 * SVG output is now SVG 1.0 valid
 * Support shadeless materials
 * Add support for multiple lights setups
 * Implement Newell algorithm for HSR

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoMisc fixes and improvements
Antonio Ospite [Sat, 2 Sep 2006 23:38:42 +0000 (01:38 +0200)]
Misc fixes and improvements

 * Support orthogonal camera
 * Fix perspective division
 * Use the path element to draw faces in SVG output
 * Do scene clipping before object transformations
 * Refactor mesh depth sorting

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoDo Depth Sorting later
Antonio Ospite [Thu, 17 Aug 2006 10:58:49 +0000 (12:58 +0200)]
Do Depth Sorting later

Posticipate depth sorting after BackFace culling so we have less faces to
process

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd edge coloring
Antonio Ospite [Sat, 5 Aug 2006 15:40:36 +0000 (17:40 +0200)]
Add edge coloring

 * Implement Edge coloring
 * Fix some values in the config class
 * Apply the color model to objects, FLAT or TOON?
 * Add edge color picker to the GUI

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd a config class
Antonio Ospite [Fri, 4 Aug 2006 18:08:43 +0000 (20:08 +0200)]
Add a config class

 * Implement a config class, to aggregate all the configuration settings
 * Add a toonShading style

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoWarn about negative scales
Antonio Ospite [Sat, 1 Jul 2006 14:59:37 +0000 (16:59 +0200)]
Warn about negative scales

 * Get the Projector earlier
 * Cleanup the workspace if the rendering fails
 * Add a warning if the objects has negative scale values, blender does
   not transform normals correctly in this case

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd a real GUI
Antonio Ospite [Tue, 20 Jun 2006 20:14:27 +0000 (22:14 +0200)]
Add a real GUI

Summary of all the changes:
 * Make meshutils methods static, this is really just an utility class
 * Move the config settings up in the code
 * Implement a real blender GUI for VRM

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoEdge styles (silhouettes, contours)
Antonio Ospite [Sun, 18 Jun 2006 22:19:34 +0000 (00:19 +0200)]
Edge styles (silhouettes, contours)

 * Implement Edge styles (silhouettes, contours)
 * Handle face opacity (alpha component) in SVG output
 * Disable joining objects when in batch mode, it crashes blender
 * Prepare support for config settings

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoFix handling Text and Curve objects
Antonio Ospite [Mon, 5 Jun 2006 21:15:37 +0000 (23:15 +0200)]
Fix handling Text and Curve objects

Do not recalculate the normals for all object types, do this only for
Text and Curve objects which can have the normals inverted when they are
converted to mesh.

REMOVE that when blender fixes the issue.

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoHandle non-mesh objects
Antonio Ospite [Sun, 4 Jun 2006 18:29:58 +0000 (20:29 +0200)]
Handle non-mesh objects

 * Prepare for alpha component handling in output
 * Convert gometric objects (curves, text) to mesh before render
 * Make the isibility routine more pythonic
 * Add some basic View frustum clipping
 * Experiment with different face depth sort strategies

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoAdd lightning and do some more refactoring
Antonio Ospite [Fri, 2 Jun 2006 20:56:35 +0000 (22:56 +0200)]
Add lightning and do some more refactoring

 * Add bpydoc settings
 * Add some more comments in the header
 * Add global settings
 * Make Projector more robust
 * Add SVG animation with javascript
 * Add lightning pass to Renderer
 * Split the main rendering routine into its passes
 * Improve the visibility routine
 * Add several helper routine to join objects or to do a object based
   depth-sort

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoSome stabilization work
Antonio Ospite [Sat, 13 May 2006 11:21:49 +0000 (13:21 +0200)]
Some stabilization work

 * Handle the canvas aspect ratio in the output writer not in the render
 * Remove the RotatePoint routine, as it is not used
 * Add proper rendering for animation
 * Use a better visibility routine
 * Use a better depth-sort routine
 * Factorize model-view transormation and back-face culling routines

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoSome improvements in the SVG writer
Antonio Ospite [Sat, 13 May 2006 08:34:06 +0000 (10:34 +0200)]
Some improvements in the SVG writer

 * Stick to SVG 1.1, and add a proper DOCTYPE definition
 * The wireframe rendering is now on a separate level
 * Add some stubs to the Renderer class
 * Add some comments here and there

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoMisc fixes and updates
Antonio Ospite [Fri, 14 Apr 2006 13:34:31 +0000 (15:34 +0200)]
Misc fixes and updates

 * Fix projection
 * Fix face color rendering and add a way to disable wireframe
 * Use a scene for the transformed object so we don't touch the
   original user data
 * Add a better visibility routine
 * A little better depth sorting
 * Add support for batch mode

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoFix dir separator in output file
Antonio Ospite [Fri, 31 Mar 2006 07:05:09 +0000 (09:05 +0200)]
Fix dir separator in output file

Add also some debug info and remove a trailing space

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoRefactor projections and back-face culling
Antonio Ospite [Thu, 30 Mar 2006 17:42:13 +0000 (19:42 +0200)]
Refactor projections and back-face culling

 * We now support different projections according to the blender camera
 * The back-face culling routine belongs now to the Renderer class
 * Add some hackish z-sorting for faces

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoBig redesign for the 0.3 series
Antonio Ospite [Tue, 28 Mar 2006 17:47:13 +0000 (19:47 +0200)]
Big redesign for the 0.3 series

VRM now has a clean design, these the main changes, in order of appearance :):

 * Add a license and a copyright block
 * Split out Projection from rendering so we can support different projections
 * Add back-face culling
 * Decouple the rendering process from the output writing, so we can support
   multiple output formats
 * We now have a Renderer class witch encapsulates the rendering process

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoFix and reindent th main loop vrm-0.2
Antonio Ospite [Thu, 23 Mar 2006 14:47:08 +0000 (15:47 +0100)]
Fix and reindent th main loop

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoMake it work with blender 2.37
Antonio Ospite [Wed, 22 Mar 2006 17:25:16 +0000 (18:25 +0100)]
Make it work with blender 2.37

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>
14 years agoInitial commit vrm-0.1
Nikola Radovanovic [Fri, 23 Jan 2004 10:34:07 +0000 (11:34 +0100)]
Initial commit

Original first version by Nikola Radovanovic.

Signed-off-by: Antonio Ospite <ospite@studenti.unina.it>