Maxime Curioni
270184e1b2
soc-2008-mxcurioni: merge-repair with trunk rev 15456
2008-07-06 19:53:32 +00:00
Maxime Curioni
85611d1045
soc-2008-mxcurioni: render buffer modification
2008-07-05 11:16:03 +00:00
Maxime Curioni
d50fbd6568
soc-2008-mxcurioni: render buffer format
2008-07-05 11:13:57 +00:00
Maxime Curioni
65c9dfe436
soc-2008-mxcurioni: render layer with FBOs -> render buffers, version 2. Still not working.
2008-07-05 08:50:41 +00:00
Maxime Curioni
5200f51a87
soc-2008-mxcurioni: first render layer implementation with frame buffer objects. It does not work yet: I cannot manage to read from the correct buffer yet.
2008-07-05 06:22:15 +00:00
Maxime Curioni
5bee0c9a82
soc-2008-mxcurioni: foundations for Freestyle as a render layer - new UI buttons and mode flags, Freestyle API refactoring, modified pipeline to incorporate the new render layer. Compared to previously, the layer functionality is available when selecting 'Blender Internal' as the rendering engine. Freestyle's result is not available in the layer yet. I need to integrate OpenGL offscreen rendering properly (with framebuffer objects) to reach that goal.
2008-07-04 07:59:19 +00:00
Maxime Curioni
ffb07fcfb3
soc-2008-mxcurioni: renamed libQGLWidget's Camera class to AppGLWidget_Camera to use Blender's Camera struct, integrated the camera parameters from Blender. Perspective projection (precisely field of view) is now correct. Orthographic projection still having issues.
2008-07-02 12:16:36 +00:00
Maxime Curioni
dfa10eba19
soc-2008-mxcurioni: Freestyle now supports camera information (the image is still a bit larger than Blender's internal renderer, probably a field of view problem). 3d scene is now no longer rendered, only 2d scene (strokes from view map information) is. Style module is still static (contour.py), will soon be handled via independent UI panel.
...
Phase 1 is considered finished. Phase 2 starts now: the objective is integrating Freestyle as an independent render layer.
2008-06-16 00:51:19 +00:00
Maxime Curioni
d8171e4bc6
soc-2008-mxcurioni: removed static dependencies (formerly fixed in app_blender/test_config.h). From now on, to use the branch, one needs to define a FREESTYLE_BLENDER_DIR environment variable to point to the Freestyle directory source/blender/freestyle
2008-06-13 22:23:24 +00:00
Maxime Curioni
062fb01614
soc-2008-mxcurioni: now supports current scene drawing (instead of fixed scene object), still with fixed style and fixed camera. Initialization is properly handled, which limits memory problems and speed-ups subsequent rendering. The viewing ratio should be correct now too. I also removed linking references to former lib3ds library path (caused some linking problems).
2008-06-08 19:35:20 +00:00
Maxime Curioni
be2b832db7
soc-mx-curioni: resolved the rendering issue. In the previous steps, I was only rendering the strokes, not the toatl scene (explaining why the render color was being inverted). i added a call to the view's draw() method. Now, the rendering steps are complete and display both the object and the silhouette.
2008-05-29 11:41:06 +00:00
Maxime Curioni
f3966dda4e
soc-2008-mxcurioni: made the image rendering faster by reading the frame buffer directly into the RenderResult's ImBuf structure, removing the need to copy it manually
2008-05-29 09:00:49 +00:00
Maxime Curioni
4b7174a6dd
soc-2008-mxcurioni: updated SConscript file for SWIG module compilation and linking under Linux
2008-05-29 02:31:36 +00:00
Maxime Curioni
9a6302e109
soc-2008-mxcurioni: First render ! It should render the teapot upside down on a black background. The correction was made by following Yafray's rendering and display implementation, which is very clear.
2008-05-29 00:27:09 +00:00
Maxime Curioni
9986b5cd73
soc-2008-mxcurioni: corrected GLStrokeRender::preparePaper function for paper texture loading. The canvas view now has its frame properly initialized to fixed dimensions. When the Freestyle render is executed, the render is displayed for a fraction of a second and is then erased by a standard gray background. I have to analyze what command I need to call to keep the result on display.
2008-05-28 21:19:56 +00:00
Maxime Curioni
58066fd0af
soc-2008-mxcurioni: updated SWIG module linking instruction
2008-05-27 14:49:28 +00:00
Maxime Curioni
21c4797896
soc-2008-mxcurioni: Freestyle execution now works flawlessly (Python runtime loads appropriate modules, using SWIG wrapper), but does not render anything yet (render window OpenGL context not used yet). Currently, the SWIG wrapper library needs to be manually compiled (see SWIG section in source/blender/freestyle/SConscript for details). I am missing some knowledge on scons to create it automatically from the SConscript. Once I find that information, I'll make it automatic and for different platforms.
...
I also corrected a simple GLStrokeRenderer bug for texture loading (not in original Freestyle code). Apparently, IMB_loadiffname doesn't recognize the paper's texture depth so a work-around will have to be found.
2008-05-27 14:13:16 +00:00
Maxime Curioni
4245f81605
soc-2008-mxcurioni: PythonInterpreter now properly handles its initialization (in accordance with original Freestyle code). This is achieved by creating a temporary Text structure, adding the required import and appending the necessary Python path. The text is executed using the BPY_txt_do_python_Text command.
...
When Freestyle is run within Blender, it should not crash; the Python interpreter should report an ImportError on _Freestyle (the SWIG wrapper).
2008-05-27 03:29:43 +00:00
Maxime Curioni
373d42dbea
soc-2008-mxcurioni: PythonInterpreter works, using Blender's Python functions. The drawing still does not produce anything because the SWIG module wrapper is missing
2008-05-26 19:52:55 +00:00
Maxime Curioni
fc8cd192a3
soc-2008-mxcurioni: Freestyle compiles but crashes at runtime because of the Python environment.
...
I analyzed the crash with gdb and PyImport_AddModule ("__main__") in Python/import.c:320 seems responsible for the crash: apparently, "__main__" is not found and causes the error "No such file or directory".
I have to figure out what's wrong with the current configuration, especially whether Freestyle's PythonInterpreter can be used as is. I am going to see whether it's just quicker to use Blender's functions.
2008-05-26 16:19:30 +00:00
Maxime Curioni
8518e500d1
soc-2008-mxcurioni: Big update. Finally works (links and compiles). So far, the following steps work:
...
1. instantiates the config path, the controller and the view
2. sets the controller’s view
3. loads a 3ds file (right now a fixed file)
4. inserts a style module (right now, also fixed)
5. computes the view map
The next and final step is running the Python script. A lot of information are fixed and should be changed to test the following code: see source/blender/freestyle/app_blender/*.cpp and search for fixed paths (starting in /Users/).
I am currently evaluating whether it's worth making Python run on its own environment (right now, the program crashes because of PyImport_AddModule) or whether it should use Blender's Python capabilities. Also, I need to figure out how to integrate the SWIG wrapper dynamic library into the current scheme.
2008-05-25 17:34:21 +00:00
Maxime Curioni
8ef2f1d524
soc-2008-mxcurioni: resolved uint issues (replaced with unsigned int). Still NOT linking
2008-05-19 13:15:07 +00:00
Maxime Curioni
09b36970bb
soc-2008-mxcurioni: uploaded missing files. Still NOT linking so do not use this version yet :(
2008-05-19 05:34:31 +00:00
Maxime Curioni
32918e4523
corrected swig Sconscript to compile on unix-like machines
2008-05-18 14:10:44 +00:00
Maxime Curioni
55655a0659
soc-2008-mxcurioni: towards Freestyle's first render: controller, config, appglwidget corrected. Freestyle is called but cannot be linked (ImBuf issues). This is an unstable commit.
2008-05-18 13:01:52 +00:00
Maxime Curioni
29b2db8518
soc-2008-mxcurioni: swig SConscript updated to compile under all configs except Win32 (where binary is copied to build directory)
2008-05-11 21:49:04 +00:00
Maxime Curioni
6069124ac9
soc-2008-mxcurioni: lib3ds SConscript updated to compile under Win32 configs
2008-05-11 21:13:54 +00:00
Maxime Curioni
c785d7493e
soc-2008-mxcurioni: merged changes to revision 14798, compilation works for rendering/ directry. Still needs to figure out how to compile on non-Unix machines.
2008-05-11 20:28:47 +00:00
Maxime Curioni
fd9ad58298
soc-2008-mxcurioni: towards Freestyle compilation, removing Qt's QString and QImage dependencies. Up to this commit, the following directories compile well (and without any warning): system, image, geometry, graph, winged_edge, view_map, stroke.
...
Modified code is commented by //soc and unused variables by //soc unused
2008-05-09 23:06:28 +00:00
Maxime Curioni
64e4a3ec9a
soc-2008-mxcurioni: merged changes to revision 14747, cosmetic changes for source/blender/freestyle
2008-05-08 19:16:40 +00:00
Maxime Curioni
959f1a0f92
soc-2008-mxcurioni: swig compiles as independent library
2008-05-06 17:23:27 +00:00
Maxime Curioni
ec90691384
merge to 14689, Freestyle library changes, SConscript start
2008-05-05 16:56:44 +00:00