#0331 – Mit szívott Kilgard?! o_O

Érdekes beszélgetés bontakozott ki a Geeks3D blog egyik bejegyzésének kommentjei között. Azt hittem, a téma a szokásos fanboykodásnak indul, hiszen a bejegyzés arról szól, van-e olyan jó az OpenGL, mint a DX, esetleg a seggére is ver-e mostanság, hála a 3.X, 4.X fejlesztéseknek. A beszélgetés mégsem ment el a “lol nub” szintre, ugyanis beesett maga Mark J. Kilgard egy komment erejéig. Azt vártuk tőle, hogy majd ismét körbepromotálja az új OpenGL 4-et, hogy mindenki vegyen Fermis kártyát, hiszen az egész cikk onnan indult, hogy ő mondta: az OpenGL 4 már felveszi a versenyt a DX-el, sőt az nVidia saját extension-jeivel a padlóra is küldi azt. De nem ez történt. Gyakorlatilag ezúttal az ürge közölte, hogy a fixed function teljesen jó és gyors, a deprecation model baromság (!!!) és csak azért van, mert pár vendor (milyen pár??? abból a néhányból, amiből az átlaguser csak 2-t ismer?) nem tud normális OpenGL implementációt írni (mihez? 20 éves cuccokhoz, mint a glBegin?!), ezért inkább kidobatják az ARB-al a specifikációból. Idézem:

“The whole ‘deprecation’ concept is something promulgated by a collection of OpenGL hardware vendors who have failed for years to provide quality OpenGL implementations. Maybe if they break API compatibility, that will help them improve the OpenGL implementations. Basically, because they can?t figure out how to deliver a quality, performant OpenGL implementation, they want to break the API.”

Yep. Way too early. :)

Na most ez annyira büdös, hogy már fáj. Ez a csávó nem lehet Mark J. Kilgard. Ha igen, akkor, hölgyeim és uraim az év OpenGL-beszélgetése olvasható itt!

Kategória: iNi Blog | Feltöltve: 2010 augusztus 26, 15:08 | Írta: MaNiAc | No Comments »

#0330 – iNi Fórum!

Na igen, eljött ez a nap is… igazából már sokkal hamarabb gondolhattam volna rá. Mióta WordPress-t használok ugyanis, megszoktam, hogy szinte MINDENRE írtak már WP plugint okos és ráérős programozók. :) Nos, miért a fórum lenne kivétel? Persze, hogy fórum plugin is van. Így aztán itt fent a lap tetején figyel egy “Fórum” link – használjátok egészséggel. Ez utóbbihoz a szokásos, kb. 2 perces WordPress regisztráció kell, mint sok egyébhez az oldalon.

A továbbiakban az OpenGL-es kérdések is jöhetnek ide, mail/iwiw/facebook/füstjelek/stb helyett ;)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 17, 16:14 | Írta: MaNiAc | No Comments »

#0329 – Ooops, i coded again.

Egy nap – két tool. Ezt mindig így kellene csinálni. 8) A dolog tegnap reggel még úgy állt, hogy fogalmam sincs, mivel fogok gyorsan modelleket gyártani, milyen formátumban lesznek, stb, stb. Annyit sejtettem, hogy Blenderben fogom őket csinálni, mert kb. jelenleg az az egyetlen elérhető tool a számomra, na meg ahhoz legalább icipicit értek. :? További probléma volt, hogy ugye nem akartam GUI-ból kínlódni a modellek exportálgatásával, etc. – ezt is szerettem volna automatizálni. Nos, a tegnap késő du. elkövetett guglizás eredménye 0, azaz nulla darab értelmes találat volt olyan keresésekre, mint “blender export script command line”, etc – ami jött, az vagy nem kapcsolódott, vagy szintén arról kérdezett valaki, hogy kellene megcsinálni.

Amit a netről megtanultam, hogy a Blendernek van egy -P command line paramétere, amiről a manual nagyon bőbeszédűen annyit ír, hogy “Run the given Python script (filename or Blender Text)”. Na, ez segítőkész. Nos, tegnap kis kisérletezgetés után kiderült, hogy a

Code:
blender.exe -b file.blend -P script.py

parancs pont azt csinálja, ami nekem kell: betölti a modellt, majd lefuttatja rajta a scriptet, aztán kilép. Ez utóbbi a -b miatt van, ami background vagyis háttérfutást eredményez. Ennek a -b paraméternek egy további szépsége, hogy így a Blender az égvilágon nem nyit meg semmilyen ablakot, teljesen non-interaktív módon fut az egész progi, ráadásul igen gyorsan, vagyis alkalmassá válik pl. NANT-ból való futtatásra!

Nos, így már nem volt más hátra, mint írni egy exporter scriptet – ehhez fogtam egy meglévőt alapul (DirectX .X exporter – a Blenderrel együtt adják), mivel a Pythonhoz elég láma vagyok, s abból gyúrtam egy sajátot, kb. egy óra alatt. Hogy ne bonyolítsam túl a dolgot, a script Lua-scriptet gyárt (höhö, scriptet gyártó script… ééérted! :D ) a modellből, amit utána le tudok fordítani luac-vel, így a lehető legkisebb, ráadásul validálva is van és seperc alatt betölthető, nem kell hozzá parsert írni, etc. Na, a modell exportot és -betöltést ezzel letudtam gyakorlatilag tegnap, pár óra alatt! 8)

A dolog szépsége egyébként, hogy a scriptet 2.5.x-es Blenderhez írtam, ami még béta változatban van ugyan, de már így is stabil, stb, valamint ez azt jelenti, hogy a kis cucc jó eséllyel még egy darabig működőképes lesz! :) Akit esetleg érdekel, hogy néz ki egy ilyen script, az megtalálja a letöltéseknél. A licensz most is WTFPL – amit ide source-ban felteszek, azzal úgy általában bárki azt csinál, amit akar! 8)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 12, 12:29 | Írta: MaNiAc | No Comments »

#0328 – PDN2DDS tool ready…

Csak egy pársoros post erejéig… :) Valamelyik nap emlegettem, hogy jó lenne, ha lenne egy tool-om, amivel NANT buildfileban automatizálva tudnék Paint.NET (*.pdn) formátumból DDS filéket kötegelve előállítani. Nos, írtam egyet – forrással együtt elérhető a letöltések szekcióban! 8) Ezek után már csak egy NANT buildfile kiegészítés kell – valami ilyesmi:

Code:
<foreach item="File" in="./textures" property="filename">
  <exec program="pdn2dds.exe">
    <arg value="${filename}" />
    <arg value="${filename}.dds" />
  </exec>
</foreach>

(Halk megjegyzés: a fenti build kód csak így hasraütésre jött, mert nincs kéznél épp NANT, meg amúgy is kicsit gagyi, mert a MyTexture.pdn-ből MyTexture.pdn.dds-t csinál. :) Na mindegy, egynek jó, amúgy is csak példa…)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 11, 16:15 | Írta: MaNiAc | No Comments »

#0327 – 02:30

Ekkor néztem tegnap utoljára az órára, mielőtt félájultan elmentem aludni. Addig kódoltam, mint a gép – határozottan tetszik a saját dolgozószoba! :) Na jó, a kódolás egy része inkább bugvadászat volt. :D Kezdtem már elfelejteni, mekkora “jó” poén a C++ban írott progiknál memory leak-ekre, rossz helyekre mutató pointerekre és hibás typecast-okra vadászni. Volt is öröm rendesen… De aztán azért csak kialakult ez-az. Nos, hogy is állok?

Első körben, így X évnyi használat után búcsúzok a DevIL-től. UPX-el összenyomva is majd egy megát tesznek ki a DLL-jei, miközben egy dologra használom: DDS betöltésre. Van így értelme? Ofc nincs! Szóval, viszlát. A neten amúgy is hemzsegnek a példák a DDS betöltésre, így nem nehéz a saját textúra-kezelő classomat összehozni.

Lassan összeáll az eXceSs központi része – hozzáteszem, a korábbi engine-ekhez meglepően gyorsan. Ok, ok, a kód dokumentálatlan nagy részt, a hibakezelés minimális, viszont egy csomó olyan feature-t tud, amit a korábbiak nem. Na meg marha jó érzés up-to-date-nek lenni :D Nincs display list, glVertex, meg ilyen baromságok, kőkeményen GL 3.x feature set van – precompiled shader, sampler objects, miegymás :) Tetszik a hardware instancing, a boolean occlusion query, ill. a vertex texture fetch, meg a vele gyorsan kialakítható displacement mapping is.

Jelen pillanatban egy értelmes modellbetöltő kell, illetve itt is hiányzik egy command line tool a modellek konvertálásához. Valamiért a Blender-ből futtatott Python script nem az igazi… :? Amint ezzel megvagyok, tényleg az eyecandy jön. Egy biztos: azt a hibát már nem követem el újra, hogy hónapokig elkínlódok kernel változókkal, vfs-el, miegymással, mint korábban. 8)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 11, 12:43 | Írta: MaNiAc | 2 Comments »

#0326 – Pont, mint régen!

Az elmúlt két éjszakának olyan hardcore-kódolós hangulata volt, amilyet már jó rég éltem át. A poén az, hogy mindez a tetejébe hétköznap történt, amire aztán meg főleg rég volt példa. Ami a még durvább, hogy ez jó eséllyel folytatódni is fog, mert sikerült elkapni a ritmust, ahogy mondani szokták… :) Lássuk csak, mit is csinálgatok mostanság? Jah igen, net nincs, így otthon a blogot biztos nem :P Helyette van viszont eXceSs, meg OpenGL orrvérzésig. Ja és NANT. Na igen, emlékszem, pár posttal visszább fikáztam valami 3rdparty libet, mert nem adtak hozzá Visual Studio project / solution filet, csak valami N+1. random make toolhoz buildfilet meg egy talicska source-ot. Erre most meg itt állok egy make tool-lal a zsebemben. Heh, wtf? 8O

Szóval a dolog egyszerű… bent a cégnél Java-zgatunk ugye. Na most, aki a Hello World-ön túl van Javaban, illetve esetleg csinált már egy egész package-et (omg srsly?! 8) ), annak lehet, hogy mond valamit az Apache ANT. (Ha még mindig a hangyánál tartasz gondolatban, akkor skipeld ezt a részt…) Szóval volt pár srác, aki úgy döntött, ha már a C# annyira hasonlít a Java-hoz, miért ne legyen már az ANT-nak is klónja. :) Ok, ok, a sztori valszeg nem így volt, de kit érdekel? A lényeg, hogy írtak hozzá egy meglepően könnyen használható make / build toolt. A cucc olyannyira jó fej, hogy komplett folyamatot – értsd: fordítás, package-elés, tesztelés, vacsifőzés, vasalás, stb. le lehet benne írni, amit utána szépen automatikusan megcsinál helyetted, te meg mehetsz süppedni. :)

Minimális ANT tapasztalattal + egy (eléggé fapados) NANT help doksival tegnapelőtt este sikerült hegesztenem egy olyan build filet, ami olyan mint egy jó mixer… Egyik végén bedobok egy csomó source-ot, textúrát, shadert, zenét, némi 3rdparty dllt, megfűszerezem 1-2 toolal (UPX, NETZ, ILMerge + pár saját), a túloldalon meg kijön egy .ZIP, benne egy komplett demo release-zel. Will it blend? :D Már, hogy a fenébe ne!

A lustaságnak kb. a fantázia szab határt, személy szerint odáig süllyedtem, hogy igyekszem minden toolból parancssoros változatot begyűjteni, hogy beleintegrálhassam őket a buildfolyamatba. 8) Az egyetlen, amit nem találtam eddig, az egy pdn2jpg (vagy még inkább pdn2dds!!!) tool, ami az általam használt Paint.NET formátumból (*.pdn, ami tud layereket, etc) közvetlenül egy textúrába túr bele mindent, mikor kiadom a “nant release” parancsot. Ez tök jó lenne, mert minden textúrát tárolhatnék az eredeti, szerkeszthető, rétegekre szedett, stb. formátumában, s nem kéne manuálisan újrakonvertálni őket minden módosításuk után. Tekintve, hogy a Paint.NET ingyenes, s effektíve ott vannak a használható assembly-jei az install könyvtárában, megnézem, azokkal tudok-e valamit alkotni. Itt ez a srác próbálkozott – úgy tűnik, nem eredménytelenül – bár tény, hogy nekem a fordítottja kéne, de ez most mellékes :D

Most, hogy ilyen szexi kis környezetem van, elég jól haladgatok. Viszont, azon törtem a fejem, hogy ha tényleg akarok valamit a function-re (figyelembe véve a jelenlegi hangulatom, IGEN, akarok! 8) ), kicsit fel kell pörgetni ezt az engine-témát, minimalizálni, amit lehet, s elkezdeni contenten dolgozni. Egy ötlet, pár textúra már megvan. Meg a zene is… Heh, wtf? Jah. ;)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 5, 14:27 | Írta: MaNiAc | No Comments »

#0325 – Vegyesvágott

Na szóval néhány infó, stb. ami a rövidsége miatt nem érdemel külön postot, így csak így sorolom őket zanzásítva… ;)

  • Régi content visszatöltése… Na ezzel meggyűlt a bajom. A site legalább tucatszor váltott hostot, engine-t, karakterkódolást, stb így a régi contentet egyszerűen nem tudom automatikusan áttolni Wordpress formára. Próbáltam – nem megy. :( Plusz, elég sok a FQDN-t is tartalmazó url, ami nem tesz jót hostváltásnál. Hála az égnek ez csak a postok legrégebbi részére igaz. Meg vannak egyéb problémák is, így jó eséllyel marad az, hogy kézzel, postonként migrálok. :x Kb. 30%-nál tartok, igazi idegölő munka. A villogó izét már levettem innen oldalról, a content visszatöltése úgyis folyamatosan menni fog… még kb. 10000 évig, +/- 1-2 nap. 8O
  • eXceSs fejlesztés… Most, hogy végre újra van időm a lakásproject után, mindent bele. Functionig jó lenne alkotni valamit – ez kb. minden évben terv, így már nem is igérek semmit idénre :D Ahol most tartok, azt inkább nevezném frameworknek, mint engine-nek. Hardcore spagettikód ftw :) Na jó, csak vicceltem. A design az az, amiről már korábban szó volt: C++ rendering core plusz .NET-es helper cuccok körülötte. Tegnap implementáltam a shader cachelést, poénból :) Egyenlőre a célhardver az OpenGL 3.3, bár még csak néhány feature van kihasználva. Mindenesetre eddig a moduláris design tetszik, a C++ core miatt gyors mint a veszedelem, nem kell Taoval meg egyéb lib-wrapperekkel szívni, stb. 8)
  • Régi / új cikkek… Ismét egy olyan téma, amivel meg vagyok lőve. Jelen pillanatban abszolút nem látom értelmét egy konzisztens cikksorozatnak, főleg, mert az egyes új GL verziókkal olyan ütemben gyomlálják ki a régi, elavult feature-öket, hogy csak pislogok. A régi cikkeket vissza kéne tölteni, aztán meglátom mi lesz.

A végére a napi jócselekedet… Function 2010, aka. Function X, aka. F(x) banner for dem massive! 8)

0325_fxbanner http://2010.function.hu

Kategória: iNi Blog | Feltöltve: 2010 augusztus 3, 14:35 | Írta: MaNiAc | No Comments »

#0324 – Binary shader OpenGL 3-as kártyán…

Ahhoz képest, hogy OpenGL 4.1-es feature, úgy tűnik eddig igazából lustaságból nem volt definiálva a precompiled shader support. :) Ezt bizonyítja az is, hogy a specifikáció kiadása után az nVidia szempillantás alatt implementálta azt. Ugyan 2.x-et támogató kártyán nem tudtam tesztelni, de úgy tűnik 3.x-esen simán megy a dolog:

Binary shader support OpenGL 3-as kártyán!

Egyébiránt az extension használata is kb. a gyerekjáték nehézségi szintet üti meg – ha már van shaderbetöltő rutinunk, egy shader cachelés (ha létezik binary azt töltjük be, ha nincs, akkor csinálunk egyet és eltesszük cache dirbe későbbre) lekódolása 10 perc vagy még annyi sem. :)

Kategória: iNi Blog | Feltöltve: 2010 augusztus 3, 11:11 | Írta: MaNiAc | No Comments »

#0323 – Function 2010!

Nos, az infó még minimális és a www.function.hu domain is kapásból a 2009.function.hu-ra irányít át, de úgy tűnik megvan a 2010-ben is (valószinűleg :) ) megrendezésre kerülő demoscene party dátuma.

2010.09.10 – 12

Lehet kódolgatni, release-eket gyártani, stb, stb. A 2010-es party oldala itt, bár még semmi sincs rajta… :)

Kategória: iNi Blog | Feltöltve: 2010 július 28, 14:30 | Írta: MaNiAc | No Comments »

#0322 – Bináris Shaderek…. Szevasztok!

A Khronos megint alkotott, méghozzá gyorsan és jót! Még az ismerősi körömben sincs senki, akinek OGL 4 kompatibilis kártyája lenne (majd most talán lesz, hogy végre itthon is kapható a GTX460!), de már itt a 4.1 specifikáció. Úgy tűnik, tényleg komolyan gondolták, hogy újjáélesztik a haldokló OpenGL communityt… Amikor a 4.0 kijött, a legtöbb “whiner” (köztük én is :D ) továbbra is azt sírta, hogy mi a fenéért nem képesek már bináris (precompiled) shader támogatást csinálni az OpenGL-hez. Hogy miért is kell ez nekünk annyira? Nos, gondoljunk bele…

Continue reading »

Kategória: iNi Blog | Feltöltve: 2010 július 28, 11:02 | Írta: MaNiAc | No Comments »

// Véletlen.Kép

openglhu_cikk_08_img7

// Kategóriák

// Fórum.Aktivitás

// FaceBook

// Új.Letöltések

// Bejegyzéscimkék

// Vezérlőpult

// Látogatók

Ezt az oldalt
195492
alkalommal látogatták meg.


(Beleértve a botokat is. Nesze neked, WWW! ;) )

// Archívum

Copyright © 2010 .: iNSANE iDEA :.. All rights reserved.

Tech Blue designed by Hive Designs • Ported by Free WordPress Themes and Linux Web Hosting