Gentoo Archives: gentoo-dev

From: Sebastian Pipping <sping@g.o>
To: gentoo-dev@l.g.o
Cc: trustees@g.o
Subject: [gentoo-dev] [rfc] Rendering the official Gentoo logo / Blender 2.04, Python 2.2
Date: Fri, 29 Apr 2011 00:30:28
Message-Id: 4DBA0676.40509@gentoo.org
1 Hello!
2
3
4 Gentoo's official logo originates from a Blender file [1] created by
5 Daniel Robbis over 8 years ago. He used Blender 2.04 and Python 1.6 at
6 that time.
7
8 When rendering that .blend file with Blender 2.49b (or a more recent
9 version), Blender does not apply the reflection texture needed [2] to
10 give the metal look that you know. I don't know why that is. All I
11 know is that Blender does find the file: it's not about the location.
12
13 Trying Blender 2.04 binaries on a Windows VM, it turned out that Blender
14 2.04 is still able to render our logo as expected. In my eyes rendering
15 our logo should not depend on a proprietary operating system or binary
16 blobs. The source tarball of Blender 2.04 is hard to find (if available
17 at all), the available sources of 2.03 [7] are incomplete. Binaries of
18 2.04 [8] are 32bit only and crash on startup on my system.
19
20 The earliest source tarball after 2.04 that upstream offers for download
21 [3] is Blender 2.26. That version does not compile with GCC 4.4 and
22 turns out to be home with Python 2.2. In hope that this version would
23 be able to render our logo in the way that Blender 2.04 did, I tried
24 fixing compilation against GCC 4.4.5. That worked [4]. The need for
25 Python 2.2 became clear when all of Python 2.4, 2.4 and 2.6 made it
26 segfault in Python related code instantly. Therefore I tried bringing
27 our old Python 2.2-r7 ebuild to life. Smaller changes like -fPIC were
28 needed but it wasn't too hard. You can find the Python 2.2-r8 in the
29 betagarden overlay [6]. In the end I could do
30
31 sudo eselect python set python2.2
32
33 to compile and run Blender 2.26 and make it render g-metal.blend (after
34 adjusting the path to the reflection texture) with metal look in a
35 resolution of a few megapixel on transparent background.
36 I have the impression, that the rending is the same as of Blender 2.04.
37
38
39 However, this is not a good long-term solution. For instance Portage
40 doesn't operate under Python 2.2 so an ebuild for Blender 2.25 is a
41 tricky thing to do nowadays.
42
43 Among the options I see is the following:
44
45 A) Find out how to render g-metal.blend with recent Blender
46 (2.57b at best) to give pixel-identical results to Blender 2.04.
47 Needs an advanced Blender user ideally.
48
49 B) Port Blender 2.26 to a recent version of Python.
50
51 Are there any other options?
52
53 What do you think?
54
55 I would also like to encourage you to reproduce the process I described
56 to spot any problems I overlooked.
57
58 Thanks for reading up to this point.
59
60 Best,
61
62
63
64 Sebastian
65
66
67 [1]
68 http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-src/gentoo-web/blend/g-metal.blend
69 [2]
70 http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-src/gentoo-web/blend/metallandscape1.jpg
71 [3] http://download.blender.org/source/
72 [4] http://git.goodpoint.de/?p=blender-2.26.git;a=summary
73 [5]
74 http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-lang/python/python-2.2-r7.ebuild?hideattic=0&view=markup
75 [6]
76 http://git.overlays.gentoo.org/gitweb/?p=proj/betagarden.git;a=commitdiff;h=a3712c45dee61717cbc09b39ff868af7a3ccaa89
77 [7] http://download.blender.org/source/chest/blender_2.03_tree.tar.gz
78 [8] http://download.blender.org/release/Blender2.04/

Replies