/usr/share/doc/opencubicplayer-doc/html/wap.html is in opencubicplayer-doc 1:0.1.21-1.2ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This documentiation falls under the GPL license.
Copyright (C) 2005 Stian Skjelstad.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. -->
<!-- Created by GNU Texinfo 6.0, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Open Cubic Player: wap</title>
<meta name="description" content="Open Cubic Player: wap">
<meta name="keywords" content="Open Cubic Player: wap">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="index.html#Top" rel="up" title="Top">
<link href="mdz.html#mdz" rel="prev" title="mdz">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space: nowrap}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: serif; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<a name="wap"></a>
<div class="header">
<p>
Previous: <a href="mdz.html#mdz" accesskey="p" rel="prev">mdz</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> </p>
</div>
<hr>
<a name="WurfelAnimator-WAP"></a>
<h2 class="chapter">10 WurfelAnimator WAP</h2>
<p>This chapter is written by Felix Domke, the author of WAP.
</p>
<a name="What-is-the-so-called-WurfelMode_003f"></a>
<h3 class="section">10.1 What is the so called WurfelMode?</h3>
<p>In version 1.0 of the famous Cubic Player, pascal got a nice idea of playing
silly animations inside the Player.
</p>
<p>He invented the <em>WurfelMode</em> (<em>Wurfel</em> is the german word for
cube). The WurfelMode was able to play animations with a resolution of
160x100 pixels in 256 colors in a special tweaked vga-mode. The animation
format was a special one.
</p>
<a name="How-can-I-create-such-animations-by-myself_003f"></a>
<h3 class="section">10.2 How can I create such animations by myself?</h3>
<p>Long time, only the cubic team (or even only pascal?) itself was able to
create such animations. The reason for this was that, as said, the animations
had to be in a very special format, and the only tool that was be able to
create this format were the not-so-famous <em>WurfelTools</em>. Included
there was a tool called <samp>makedmp.exe</samp>. It took various <samp>.tga</samp>
files, and made a <samp>.dat</samp> animation out of them. But noone checked how
this tools worked, mainly because it had no command-line-help and the sources
weren’t available anymore.
</p>
<p>But times are changing. Today, you don’t have to guess how to use a utility
anymore. You just have to read the documentation (yes, even you, Realtime ;).
Today, you can even use a resolution of 320x200 (wow, THAT’s highres).
</p>
<p>For people who didn’t guess how pascal’s tool worked, I made a new one.
This time <em>with</em> source available to all interested people. This time
with <samp>.pcx</samp> images, not <em>.tga</em> one, because <samp>.pcx</samp> is much
easier to read, and also more widely supported. This time even with some
palette-aligning, so you don’t have to care about same palettes anymore.
</p>
<a name="And-how-can-I-use-your-tool_003f"></a>
<h3 class="section">10.3 And how can I use your tool?</h3>
<p>First, you have to render/paint/rip a animation. It HAS to be 320x200, or,
if you want to make an old, $<$ OCP 2.0q, animation, 160x100.
In case you didn’t notice, the OCP 2.0q and higher has a new WurfelMode,
called <em>WurfelMode ][</em> , with support for 320x200 pixels
images, instead of the lowres 160x100 ones.
</p>
<p>Your animation should be in the form of many, many <samp>.pcx</samp> files,
called for example <samp>PIC000.PCX</samp>, <samp>PIC001.PCX</samp>,
<samp>PIC002.PCX</samp> and so on. They must have only 256 colors, and they
should have all the same palette. If they don’t have the same palette, the
palette will be aligned. But my calculation of this isn’t very good (but it
works :), so for BEST results you have to do this in your favourite
picture-editing-program. Next, you have to create a <em>script</em>. This
script contains informations about the filenames of your frames, and a some
other stuff.
</p>
<p>The script has the following format:
</p><div class="example">
<pre class="example">Version
[SFO] RLECompression
Title
NumFrames Delay Filename
[NumFrames Delay Filename]
[NumFrames Delay Filename]
[... ]
</pre></div>
<p><em>Version</em> is either 0 or 1, 0 for 160x100 animations, 1 for 320x200.
If you want to create a Version 0-animation, <em>SFO</em> should be set to 1,
if you want to create a Version 1-animtion, <em>SFO</em> has to be left out.
<a name="DOCF40" href="#FOOT40"><sup>40</sup></a>
<em>RLECompression</em> should be set to 1, it compresses the Animation a little
bit.
<em>Title</em> is the title of the animation, it shouldn’t be longer than 31
chars, it’s displayed inside the fileselector of OCP.
</p>
<p>After this <em>header</em>, a random number of section follows (but at least
ONE ;).
</p>
<p>Every section describes a sequence of some PCXs. In the final animation,
all sections are joint together.
</p>
<p><em>NumFrames</em> is the number of frames in this sequence. For example, if
you have PCXs that are named from <samp>PIC000.PCX</samp> up to
<samp>PIC199.PCX</samp>, NumFrames should be 200.
<em>Delay</em> is handled a little bit different in the two versions. If you
want to create a Version 0-animation, a <em>Delay</em> of 1 means a framerate
of about 21.3 frames per second, a <em>Delay</em> of 2 is about 10.65 fps (the
half), a <em>Delay</em> of 3 is about 7.1 (a third) and so on.
</p>
<p>If you want to create a Version 1-animation, <em>Delay</em> is 65536/desired
fps, so if you want to have 15fps, "Delay" should be 4369. This value has to
be BELOW 65536 (and above 0, of course :)
<em>Filename</em> is the filename of your sequence. Because most animations
have more than 1 frame, you can use %d (and other C-printf placeholders).
For people whose native language is not C, here some short examples:
</p>
<table>
<tr><td width="34%"><b>filename</b></td><td width="33%"><b>framenumber</b></td><td width="33%"><b>real filename</b></td></tr>
<tr><td width="34%">pic%d.pcx</td><td width="33%">0</td><td width="33%">pic0.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">1</td><td width="33%">pic1.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">2</td><td width="33%">pic2.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">3</td><td width="33%">pic3.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">9</td><td width="33%">pic9.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">10</td><td width="33%">pic10.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">11</td><td width="33%">pic11.pcx</td></tr>
<tr><td width="34%">pic%03d.pcx</td><td width="33%">0</td><td width="33%">pic000.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">1</td><td width="33%">pic001.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">2</td><td width="33%">pic002.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">3</td><td width="33%">pic003.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">9</td><td width="33%">pic009.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">10</td><td width="33%">pic010.pcx</td></tr>
<tr><td width="34%"></td><td width="33%">11</td><td width="33%">pic011.pcx</td></tr>
</table>
<p>The framenumber always starts with 0, not with 1, keep this in mind!
</p>
<p>Here is an example script: (version 0)
</p><div class="example">
<pre class="example">0
1 1
a basic cubic-player animation
11 2 intro%d.pcx
200 1 ani%03d.pcx
</pre></div>
<p>This animation would have 211 frames (<samp>intro0.pcx</samp> to
<samp>intro10.pcx</samp>, then <samp>ani000.pcx</samp> to <samp>ani199.pcx</samp>).
</p>
<p>And here again one for version 1:
</p><div class="example">
<pre class="example">1
1
an enhanced OpenCP animation
11 3072 intro%x.pcx
200 1000 ani%03d.pcx
</pre></div>
<p>To create the animation, just type in
</p><div class="example">
<pre class="example">wap <scriptfilename.scr> <outputfilename.dat>
</pre></div>
<p>and hit <tt class="key">Enter</tt>.
</p>
<p>The WurfelAnimator will now try to make the animation.
To view the animation inside OCP, rename the created <samp>.DAT</samp>-file
to <samp>CPANU001.DAT</samp> (or <samp>CPANI002.DAT</samp> and so on...) and press
<tt class="key">w</tt> inside the player.
</p>
<a name="This-tool-doesn_0027t-work_0021"></a>
<h3 class="section">10.4 This tool doesn’t work!</h3>
<p>No problem,I have always an open ear for your problems. Just write your
problems to <a href="mailto:tmbinc@gmx.net">mailto:tmbinc@gmx.net</a>.
</p>
<p>Maybe you have luck and meet me on IRC, usually I am in <a href="irc://#coders.ger">irc://#coders.ger</a>
and some other channels, but if you don’t know those, well, maybe you’re
not welcome on them ;)
</p>
<p>Anyway, maybe you have some fun with this tool.
</p>
<div class="footnote">
<hr>
<h4 class="footnotes-heading">Footnotes</h4>
<h3><a name="FOOT40" href="#DOCF40">(40)</a></h3>
<p>If you’re interested what this value means, well, just get the
original documentation for professionals, it’s described there</p>
</div>
<hr>
<div class="header">
<p>
Previous: <a href="mdz.html#mdz" accesskey="p" rel="prev">mdz</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> </p>
</div>
</body>
</html>
|