<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0">
	<channel>
		<title>BlitzBasic Portal Worklogs - miniB3D extended Version</title>
		<link>https://www.blitzforum.de/worklogs/27/</link>
		<description>Worklog von miniB3D dev Team</description>
		<language>de</language>
		<managingEditor>mail@blitzforum.de</managingEditor>
		<webMaster>mail@blitzforum.de</webMaster>
		<pubDate>Wed, 03 Dec 2008 18:53:26 +0100</pubDate>
		<lastBuildDate>Wed, 03 Dec 2008 18:53:26 +0100</lastBuildDate>

		<item>
			<title>Wo ist nur die Zeit geblieben ?</title>
			<link>https://www.blitzforum.de/worklogs/27/#914</link>
			<guid>https://www.blitzforum.de/worklogs/27/#914</guid>
			<author>klepto2</author>
			<description>Tja, hat wohl doch etwas l&amp;auml;nger mit einem neuen Worklogeintrag gedauert.&lt;br /&gt;&lt;br /&gt;Da ich vor 2 Wochen eine Stelle als Entwickler angefangen habe und dieser unter der Woche meine ganze Zeit in anspruch nimmt, werden wohl viele geplante Features erstmal auf Eis gelegt. Aber keine Panik, ich werde versuchen diese nach und nach mit einzubauen. Als erstes werde ich jedoch versuchen eine lauff&amp;auml;hige Version zu diesem Wochenende fertigzustellen und zum Download anbieten. &lt;br /&gt;&lt;br /&gt;Zu den Dingen aus dem letzten Worklog werden auf jedenfall noch 3 weitere Features bis Dato fertig (nicht komplett , aber lauff&amp;auml;hig) :&lt;br /&gt;&lt;br /&gt;Zum 1. Terrain :&lt;br /&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/treeonterra2.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Anmerkung: &lt;br /&gt;Die B&amp;auml;ume sind Resultat aus der Einbindung der (noch) Winonly treelib.dll und sind zur laufzeit erstellt.&lt;br /&gt;Die treelib selbst wird erstmal nicht den weg in das offizielle Release finden.&lt;br /&gt;Das Terrain selbst kann theoretisch eine beliebig gro&amp;szlig;e Aufl&amp;ouml;sung haben. Das Terrain ist ein Hybrid aus ChunkedLOD und gestreamten Terrain. Das Streaming wird durch ein vorheriges kompilieren der heightmap erreicht. Dabei wird die Heightmap in ihre Rohdaten zerlegt und nur die reinen H&amp;ouml;hendaten werden gespeichert. Diese k&amp;ouml;nnen nun gestreamed werden. Getestet habe ich das ganze mit heightmaps von 16k * 16k , wobei die Heightmap im PNG Format eine Gr&amp;ouml;&amp;szlig;e von 190MB hat. &lt;br /&gt;&lt;br /&gt;Zu den &amp;uuml;blichen Texturm&amp;ouml;glichkeiten gibt es noch die M&amp;ouml;glichkeit das Terrain in Echtzeit texturieren zu lassen (per GLSL) daf&amp;uuml;r gibt man verschiedene Layer an zb so:&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Code: &lt;/b&gt;&lt;span style=&quot;font-size:0.8em; display:inline;&quot; id=&quot;showcodebox0&quot;&gt; &lt;a href=&quot;javascript&amp;#058;show_code('0')&quot;&gt;[AUSKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;span style=&quot;font-size:0.8em; display:none;&quot; id=&quot;hidecodebox0&quot;&gt; &lt;a href=&quot;javascript&amp;#058;hide_code('0')&quot;&gt;[EINKLAPPEN]&lt;/a&gt; &lt;/span&gt;&lt;div id=&quot;codebox0&quot; class=&quot;codebox&quot; style=&quot;max-height: 200px;&quot; onload=&quot;check_code('0');&quot;&gt;&lt;br /&gt;Global TerrainMaterial&amp;#58;TTerrainMaterial = New TTerrainMaterial&lt;br /&gt;Terrainmaterial.CreateTerrainMaterial&amp;#40;&amp;#41;&lt;br /&gt;Terrainmaterial.SetTerrain&amp;#40;Terrain&amp;#41;&lt;br /&gt;Local Layer&amp;#58;TTexLayer = TTexLayer.Create&amp;#40;LoadTexture&amp;#40;&amp;quot;textures/sand_01.jpg&amp;quot;&amp;#41; , 0.0 , 0.15 , 0 , 60&amp;#41;&lt;br /&gt;Local Layer2&amp;#58;TTexLayer = TTexLayer.Create&amp;#40;LoadTexture&amp;#40;&amp;quot;textures/grass_2.jpg&amp;quot;&amp;#41; , 0.15 , .9 , 0 , 60&amp;#41; &lt;br /&gt;Local Layer3&amp;#58;TTexLayer = TTexLayer.Create&amp;#40;LoadTexture&amp;#40;&amp;quot;textures/strata.jpg&amp;quot;&amp;#41; , 0.0 , 1.0 , 60 , 90&amp;#41; &lt;br /&gt;Local Layer4&amp;#58;TTexLayer = TTexLayer.Create&amp;#40;LoadTexture&amp;#40;&amp;quot;textures/MossyGround.BMP&amp;quot;&amp;#41; , 0.15 , .9 , 59 , 60&amp;#41; &lt;br /&gt;&amp;nbsp;&lt;br /&gt;TerrainMaterial.Addlayer&amp;#40;Layer&amp;#41; &lt;br /&gt;TerrainMaterial.Addlayer&amp;#40;Layer2&amp;#41; &lt;br /&gt;TerrainMaterial.Addlayer&amp;#40;Layer3&amp;#41;&lt;br /&gt;TerrainMaterial.Addlayer&amp;#40;Layer4&amp;#41; &lt;br /&gt;TerrainMaterial.Addlayer&amp;#40;Layer&amp;#41; &lt;br /&gt;&lt;br /&gt;TerrainMaterial.Activate&amp;#40;&amp;#41;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Wobei ein Layer aus einer Textur, aus der relativen H&amp;ouml;he (prozentuales Verh&amp;auml;ltniss zum h&amp;ouml;chsten Punkt) 0 - 1.0 und einem Slope zwischen 0 - 90 besteht. Mit obigen Beispiel erh&amp;auml;lt man zb sowas:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/terrashader2.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dadurch das das Terrain besser die einzelnen Chunks durch einen Quadtree verwaltet werden, gibt es die M&amp;ouml;glichkeit Entity/Mesh Layer in dem Terrain anzulegen. Diese werden aus der &amp;uuml;blichen Berechnungsroutine f&amp;uuml;r Culling ausgenommen und werden zusammen mit dem Terrain ausgewertet. Dadurch lassen sich mit verh&amp;auml;ltnissm&amp;auml;&amp;szlig;ig wenig Aufwand Dinge wie W&amp;auml;lder oder Grass Layer realisieren, da diese nicht mehr einzeln auf Sichtbarkeit sondern in einem Cluster auf Sichtbarkeit &amp;uuml;berpr&amp;uuml;ft werden.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Nun noch kurz zu den 2 weiteren Features:&lt;br /&gt;&lt;br /&gt;1. Globale Shader: Im Prinzip &amp;auml;hnlich den normalen Shadern, nur das bei globalen Shadern die komplette Szene mit dem Shader belegt wird. Dabei wird es mehrere M&amp;ouml;glichkeiten geben. &lt;br /&gt;zb:&lt;br /&gt;- komplett ohne brushes rendern (f&amp;uuml;r depth oder normal maps)&lt;br /&gt;- ohne Lighting etc.&lt;br /&gt;&lt;br /&gt;Multipass w&amp;auml;re in diesem Fall auch M&amp;ouml;glich, das muss aber dann erstmal selber eingebaut werden, da mir leider die Zeit im Moment fehlt.&lt;br /&gt;&lt;br /&gt;2. Incbin und Stream Support:&lt;br /&gt;Modelle und Texturen k&amp;ouml;nnen komplett per incbin geladen werden oder alternativ aus einem Stream (zb: KLPacker o.&amp;auml;) bei letzterem muss ein vorher ein Texturenverzeichniss angelegt werden (im Prinzip eine TMap) dort m&amp;uuml;ssen zuvor (vor dem laden des Modells) alle relevanten Texturen geladen werden.&lt;br /&gt;&lt;br /&gt;So, ich hoffe das reicht f&amp;uuml;rs erste und ebenso  hoffe ich das ich meinen Termin auch einhalten kann &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Bis dann klepto2&lt;br /&gt;</description>
			<pubDate>Wed, 03 Dec 2008 18:53:26 +0100</pubDate>
		</item>

		<item>
			<title>Q3 BSP Maps mit Bezier Patches :)</title>
			<link>https://www.blitzforum.de/worklogs/27/#669</link>
			<guid>https://www.blitzforum.de/worklogs/27/#669</guid>
			<author>klepto2</author>
			<description>Kurzer Zwischenbericht:&lt;br /&gt;&lt;br /&gt;Mir ist es gelungen die letzten bugs aus den Q3 Bezierpatch code zu entfernen, somit unerst&amp;uuml;tzt minib3d nun fast alles (an die einzelnen Shader werde ich mich demn&amp;auml;chst ransetzen) aus den BSP Maps &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Image:&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/BSPBezier.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Weitere News folgen in K&amp;uuml;rze &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt;</description>
			<pubDate>Mon, 29 Sep 2008 21:19:06 +0200</pubDate>
		</item>

		<item>
			<title>Es tut sich was ;)</title>
			<link>https://www.blitzforum.de/worklogs/27/#655</link>
			<guid>https://www.blitzforum.de/worklogs/27/#655</guid>
			<author>klepto2</author>
			<description>Lange ist es her, das ich &amp;uuml;ber minib3d extended geschrieben habe,&lt;br /&gt; doch nun werde ich nach mehreren Anfragen mal &amp;ouml;fters (hoffentlich) &lt;br /&gt;meinen Worklog aktualisieren.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Was gibt es neues?&lt;/b&gt;&lt;br /&gt;Viele haben ja mitbekommen, das die Interface Version (DX/OpenGL) erstmal auf Eis gelegt wurde. &lt;br /&gt;Darum habe ich wie von Abrexxes in einer News erw&amp;auml;hnt mit einer neuen Version angefangen die&lt;br /&gt;viele Features und Verbesserungen aus der Interface Version beinhalten wird.&lt;br /&gt;&lt;br /&gt;Darunter folgende:&lt;br /&gt;&lt;br /&gt;-- Verbesserte Stencil Shadows (bugfreier, schneller, geringerer Speedverlust bei animierten Meshes)&lt;br /&gt;-- Komplett neu &amp;uuml;berarbeitete Physik integration&lt;br /&gt;-- Echtes Render to Texture mittels FBO, ein Fallback ist ebenfalls integriert&lt;br /&gt;-- fertige Loader f&amp;uuml;r : B3D,3DS,MD2,MD3(mit tags),BSP (noch ohne BSP Trees), OBJ&lt;br /&gt;-- Einfachere Shaderunterst&amp;uuml;tzung&lt;br /&gt;-- Volle Max2D unterst&amp;uuml;tzung. Es wurden einige Bugs aus den beiden bis jetzt verwendeten Methode entfernt&lt;br /&gt;-- Viele Helper Functions wie zb: GetFPS(),GetDelta()&lt;br /&gt;-- Zus&amp;auml;tzlich integrierte Mathe Lib mit Vektoren, Matrizen etc&lt;br /&gt;-- Benutzerdefinierte Clipplanes&lt;br /&gt;&lt;br /&gt;uvm.&lt;br /&gt;&lt;br /&gt;Viele Dinge sind noch geplant, wie der Einbau des Terrain systems aus der Interface Version oder ein PostFX system und Shadowmapping.&lt;br /&gt;&lt;br /&gt;Doch genug der Worte hier erstmal ein paar screenshots &lt;img src=&quot;/forum/images/smiles/icon_wink.gif&quot; alt=&quot;Wink&quot; /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Terrainsystem (Heightmap = 4096*4096 ) mit 33Mio potentiellen Dreiecken&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/TerrainWire.png&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Terrain und Wasser (Reflections und Refraction)&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/WaterTerrain.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;BSP Map Vergleich: Mit Q3Shader und rechts ohne&lt;/b&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/bspcompare.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2. Beispiel BSP &lt;/b&gt;&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/mini3.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So, das soll es erstmal gewesen sein, demn&amp;auml;chst wird es noch einen detailliertern Eintrag zu der neuen Shader und Physik integration geben und dann werde ich auch mal etwas n&amp;auml;her auf andere neue Funktionen eingehen.&lt;br /&gt;&lt;br /&gt;Kommentare sind sehr willkommen &lt;img src=&quot;/forum/images/smiles/icon_smile.gif&quot; alt=&quot;Smile&quot; /&gt;</description>
			<pubDate>Thu, 25 Sep 2008 22:30:39 +0200</pubDate>
		</item>

		<item>
			<title>Erster Eintrag</title>
			<link>https://www.blitzforum.de/worklogs/27/#57</link>
			<guid>https://www.blitzforum.de/worklogs/27/#57</guid>
			<author>klepto2</author>
			<description>Nun wo soll ich anfangen. Wie viele wissen hat simonh vom BRL Team  eine OpenSource OpenGL 3D Engine mit dem namen minib3d angefangen. Ziel dieser Engine ist es m&amp;ouml;glichst kompatibel mit dem original B3D zu&lt;br /&gt;sein.&lt;br /&gt;So irgendwann habe ich einfach mal angefangen kleine Zus&amp;auml;tze f&amp;uuml;r mich einzubauen, als diese immer mehr wurden dachte ich mir, warum nur f&amp;uuml;r mich, vielleicht k&amp;ouml;nnten sie andere ja auch gebrauchen. Also entstand&lt;br /&gt;'minib3d extended'. &lt;br /&gt;&lt;br /&gt;Mittlerweile brachte simonh seine neue Version 0.452 mit einigen Neuerungen raus und ich entschloss mich nochmal alle Extensions von neuem zu integrieren. Allerdings nach Absprache mit simonh wird es das letzte mal sein, da die n&amp;auml;chsten &amp;Auml;nderungen nur noch von kleiner und &amp;uuml;bersichtlicher natur sind und sich somit leicht &lt;br /&gt;integrieren lassen. &lt;br /&gt;Mittlerweile gibt es eine Wiki, die von Ironstorm gesponsert wurde. Diese wurde zuletzt nicht gerade gepflegt, was sich aber dank Ironstorm in den letzten Wochen ge&amp;auml;ndert hat. Vielen dank daf&amp;uuml;r. Wer sich also f&amp;uuml;r minib3d interessiert, dort gibt es die Downloads, eine Commandreference und vieles mehr. Ein Besuch lohnt sich auf jeden Fall. &lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.minib3d.com&quot; target=&quot;_blank&quot;&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://www.minib3d.com/lib/exe/fetch.php?media=start:logo.png&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Also was gibt es neues von der extended Front:&lt;br /&gt;&lt;br /&gt;Abgesehen von dem Occlusionmanager ist bereits alles wieder auf dem alten Stand.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Besonderheiten:&lt;/b&gt;&lt;br /&gt;--&amp;gt;Terrainsystem konnte nochmal um ca. 50-60% beschleunigt werden&lt;br /&gt;--&amp;gt;Das Shadersystem wurde vom Brushsytem getrennt und hat nun ein sogenanntes ShaderMaterial&lt;br /&gt;     Dadurch k&amp;ouml;nnen zu den bereits eingebauten GLSL Shadern sp&amp;auml;ter noch CG Shader hinzukommen &lt;br /&gt;--&amp;gt;Newton hat auch ein paar neuerungen erfahren (Vehicles und Buoyancy system)&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Woran ich gerade arbeite:&lt;/b&gt;&lt;br /&gt;--&amp;gt;Offscreen RendertoTexture (Bild siehe unten)&lt;br /&gt;--&amp;gt;Shadowmapping(Ebenfalls Bild unten)&lt;br /&gt;--&amp;gt;Postscene effect system (sowohl fullscreen als auch per entity base)&lt;br /&gt;--&amp;gt;Projected Textures &lt;br /&gt;--&amp;gt;vieles mehr&lt;br /&gt;&lt;br /&gt;Bilder: &lt;br /&gt;&lt;br /&gt;Ein Bild mit einem Terrain und einem Wassershader mit Reflection und Refraction&lt;br /&gt;(in der Scene werden durch ca. 800000 Triangles angezeigt)&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/miniB3D/water-1.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ein Bild von dem render to texture sample allerdings hier mit echtem rtt auf eine 2048*2048 Aufl&amp;ouml;sung&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/rtt2048x2048.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Hier die ersten versuche mit Shadowmapping (bitte etwas nachsicht, die Depthmap hat nur eine Aufl&amp;ouml;sung von 512*512)&lt;br /&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/ShadowMapTest.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Und zu guter letzt nochmal ein kleines Video &lt;br /&gt;&lt;a href=&quot;http://s2.photobucket.com/albums/y48/klepto2/?action=view&amp;amp;current=Untitled.flv&quot; target=&quot;_blank&quot;&gt;&lt;span&gt;&lt;img onload=&quot;resize_image(this)&quot; src=&quot;http://i2.photobucket.com/albums/y48/klepto2/th_Untitled.jpg&quot; alt=&quot;user posted image&quot; /&gt;&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Ich hoffe bald gibt es noch mehr zu berichten.&lt;br /&gt;&lt;br /&gt;Bis dann euer klepto2.</description>
			<pubDate>Tue, 08 Jan 2008 20:48:08 +0100</pubDate>
		</item>


	</channel>
</rss>
