﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3AMx%2FGSoC2008_Week1</id>
	<title>利用者:Mx/GSoC2008 Week1 - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blender.jp/index.php?action=history&amp;feed=atom&amp;title=%E5%88%A9%E7%94%A8%E8%80%85%3AMx%2FGSoC2008_Week1"/>
	<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Mx/GSoC2008_Week1&amp;action=history"/>
	<updated>2026-07-10T08:53:55Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Mx/GSoC2008_Week1&amp;diff=59482&amp;oldid=prev</id>
		<title>Yamyam: 1版 をインポートしました</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Mx/GSoC2008_Week1&amp;diff=59482&amp;oldid=prev"/>
		<updated>2018-06-28T17:54:35Z</updated>

		<summary type="html">&lt;p&gt;1版 をインポートしました&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;2018年6月28日 (木) 17:54時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ja&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(相違点なし)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Yamyam</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Mx/GSoC2008_Week1&amp;diff=59481&amp;oldid=prev</id>
		<title>2008年7月19日 (土) 03:44にwiki&gt;Mxによる</title>
		<link rel="alternate" type="text/html" href="https://wiki.blender.jp/index.php?title=%E5%88%A9%E7%94%A8%E8%80%85:Mx/GSoC2008_Week1&amp;diff=59481&amp;oldid=prev"/>
		<updated>2008-07-19T03:44:27Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== GSoC 2008 - Week 1 report ==&lt;br /&gt;
&lt;br /&gt;
==== This week ====&lt;br /&gt;
&lt;br /&gt;
This week, I completed the most important part of the first phase, creating the first Freestyle-based renders within Blender. Up to last week, I had only managed to open the 3ds file with lib3ds and hadn't gotten the view map calculations working. The basic execution process is divided in these few steps:&lt;br /&gt;
&lt;br /&gt;
   1. instantiate the config path, the controller and the view&lt;br /&gt;
   2. set the controller's view to the instantiated view and set up the view dimensions&lt;br /&gt;
   3. load a 3ds file&lt;br /&gt;
   4. insert a style module&lt;br /&gt;
   5. compute the view map&lt;br /&gt;
   6. draw the strokes&lt;br /&gt;
   7. render the image&lt;br /&gt;
&lt;br /&gt;
The original Freestyle program uses a Qt widget QGLViewer to display and manipulate 3D objects (step 6 and 7). I found out this week that the widget's functionality is also needed for the view map calculations (step 5). I managed to modify QGLViewer's code (which is open source) to only keep the strict necessary for the job. After a few trials, I got it working.&lt;br /&gt;
&lt;br /&gt;
The strokes are rendered using commands in a style module, coded in Python. Python commands are executed through a class called PythonInterpreter, that routes calls to Python's C interface (PyRun_SimpleString and PyErr). Unfortunately, these methods simply crash, probably due to Blender's Python environment. Instead of fighting against the system in place, I decided to do some phase 2 work, having Freestyle use Blender's Python environment directly for its execution. It just worked. That is going to save me time in the next phase.&lt;br /&gt;
&lt;br /&gt;
Once the Python commands were sent, I had to make the connection between Python and Freestyle possible, which is a SWIG wrapper. I managed to get that working: I compiled the SWIG wrapper as a shared library, used by the Python runtime. I haven't found a way to generate that library automatically with scons so right now, the wrapper module is compiled and linked manually (instructions are in the source/blender/freestyle/SConscript file)&lt;br /&gt;
&lt;br /&gt;
Once that was working, I corrected a few integration bugs related to replacing Qt image library with ImBuf and got to a first render. I thought I would have to play around with the OpenGL context but that seems to work by itself (but it only works if &amp;quot;Render Display&amp;quot; is set to &amp;quot;Render Window&amp;quot;). My first render was incomplete (colors were inverted) but I realized that I had only gone up to step 6. By using the view's drawing method, the render became now correct (see http://maximecurioni.com/gsoc2008/?p=18 for examples).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Next week ====&lt;br /&gt;
&lt;br /&gt;
Right now, the result is limited to a static scene and a static style module (compiled in code). The next step is removing this fixed information and rendering the scene model, using the camera information. I will use Blender's 3ds export capabilities to produce a 3ds file reimported later into Freestyle. I will also need to set up a Freestyle render panel to control the different options used by the view.&lt;br /&gt;
&lt;br /&gt;
Before I do that, I want to make sure my work compiles and runs well on different platforms. Jean-Luc has tried compiling it and is facing issues with SWIG. I also had mfoxdogg help me compile it on Linux but didn't have a chance to finish it. I hope to do that in the next few days.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Issues ====&lt;br /&gt;
&lt;br /&gt;
On my setup, I have no particular issue but I need to make sure that's also the case for other people. I also have had a crash with a particular 3ds file during view map calculations. I am not sure whether it is a problem with Freestyle's algorithm, lib3ds or something else. Once I get the scene model imported, I'll test it again. Stéphane (one of the original Freestyle authors) also mentioned that the image aspect ratio is maybe wrong. I set the view's dimensions to the render window's; I will have to determine whether OpenGL projection matrices need to be tweaked.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Schedule ====&lt;br /&gt;
&lt;br /&gt;
So far, I feel I am a little bit ahead of schedule. I had planned to have my first render by the end of this week-end (the first phase is due for June 8). Even though that's a good thing, I probably spent more time than I should have and I am running a bit late in some of my school work. I will try to get some of it covered this week-end.&lt;/div&gt;</summary>
		<author><name>wiki&gt;Mx</name></author>
		
	</entry>
</feed>