ChaosBasic 0.4.0.1 SneakPeek
Posted: Tue Apr 01, 2008 10:46 am
Moro!
Moni on varmasti ihmetellyt, miksi Kaaoksen uusi versio valmistuu näin tuskaisen hitaasti. Itse olen maininnut syyksi laiskuuden - tämä ei kuitenkaan pidä täysin paikkaansa, sillä olen kehittänyt Kaaoksen ominaisuuksia tuleviin versioihin. Kiinnostuin 3D:stä kunnolla noin pari kuukautta sitten ja päätin heti, että sellainen on ChaosBasiciinkin saatava. Valitettavasti 3D-moottorin integroiminen tulkkiin on yhtä tuskaa ja kasvattaa .EXE:n kokoa huimasti. Tämän vuoksi jouduin tyytymään kompromissiratkaisuun ja tein 3D-moottorista wrapattavan, kiitos toimivan DLL-tuen. Tämä tarkoittaa käytännössä sitä, jokainen voi wrapata oman haluamansa 3D-moottorin Kaaokseen kiinni, jos vain taidot piisaavat. Itse olen Ogre:n suuri ystävä, ja siksi olenkin tehnyt testejä kyseisellä enginellä.
Testitulokset ovat olleet lupaavia: olen saanut 3D-maailman pyörimään suhteellisen korkeilla FPS-lukemilla, ja vieläpä varsin näteillä grafiikoilla. Ja jotta saisitte hieman silmänkarkkia, tässäpä screenshotti aikaansaannoksistani:
Koodi samaan tuotokseen:
Vaikka lopputulokset ovat hienoja: aloitteijat älkää pelästykö! Koodi tämän lopputuloksen takana on hyvin yksinkertaista, joten toivottavasti tälläisiä tuotoksia saadaan myöhemmin rutkasti lisää. Valitettavasti testit ovat vasta aivan alkumetreillä, eikä minulla ole aikaa suorittaa niitä tarpeeksi. Tämän vuoksi te astutte kuvaan: ne joilla olisi halukkuutta toimia beta-testaajina, pistäkää privaviestiä. Näin voimme nopeuttaa tulevaa julkaisua rutkasti. Ehkäpä jo tasan vuoden päästä tämäkin hienous saadaan jokaisen yhteisön jäsenen käyttöön.
Moni on varmasti ihmetellyt, miksi Kaaoksen uusi versio valmistuu näin tuskaisen hitaasti. Itse olen maininnut syyksi laiskuuden - tämä ei kuitenkaan pidä täysin paikkaansa, sillä olen kehittänyt Kaaoksen ominaisuuksia tuleviin versioihin. Kiinnostuin 3D:stä kunnolla noin pari kuukautta sitten ja päätin heti, että sellainen on ChaosBasiciinkin saatava. Valitettavasti 3D-moottorin integroiminen tulkkiin on yhtä tuskaa ja kasvattaa .EXE:n kokoa huimasti. Tämän vuoksi jouduin tyytymään kompromissiratkaisuun ja tein 3D-moottorista wrapattavan, kiitos toimivan DLL-tuen. Tämä tarkoittaa käytännössä sitä, jokainen voi wrapata oman haluamansa 3D-moottorin Kaaokseen kiinni, jos vain taidot piisaavat. Itse olen Ogre:n suuri ystävä, ja siksi olenkin tehnyt testejä kyseisellä enginellä.
Testitulokset ovat olleet lupaavia: olen saanut 3D-maailman pyörimään suhteellisen korkeilla FPS-lukemilla, ja vieläpä varsin näteillä grafiikoilla. Ja jotta saisitte hieman silmänkarkkia, tässäpä screenshotti aikaansaannoksistani:
Koodi samaan tuotokseen:
Code: Select all
// ogre grass demo with ChaosBasic 0.4.0.1
// Matti Lankinen
Include "OgreWrapper.chb"
Screen.Set 800,600,32
// rendersystemin valinta
Screen.Use RS_OGRE
// ladataan malli
Var head As Mesh = New Mesh
head.Load "media/OgreHead.mesh"
head.SetMaterial "media/materials/BumpMapping.mat"
// nostetaan hieman, että ei ole lattian keskellä
head.Translate 0,200,0
// luodaan lattia
Var floor As Floor = New Floor
floor.SetSize 5000,5000
floor.SetPosition 0,0,0
// näin helposti luodaan hieman ruohoa
// tekstuurin nimi, density (0-1) 0 = hyvin harva 1 = hyvin tiheä
floor.SetGrassLayer "media/example_grass.tga", 0.4
// skybox
// kyllä: jopa zipeistä voi ladata!
OgreWrapper.SetSkybox "media/space_sky.zip"
// lopuksi valo
Var l As Light = New Light
l.SetPosition 300,300,0
l.SetColor 238,188,17
l.SetRange 2500
// kameran movement
OgreWrapper.SetDefaultFPSCameraMovement OGRE_WASD
// päivitetään
Repeat
// 3D-objektit osaavat päivittää itse itsensä! :)
Screen.Draw
Forever