cbResourceManager

Oletko tehnyt jotain, mistä muut voisivat hyötyä. Postita vinkit tänne.
Post Reply
JATothrim
Tech Developer
Tech Developer
Posts: 606
Joined: Tue Aug 28, 2007 6:46 pm
Location: Kuopio

cbResourceManager

Post by JATothrim »

Tämä kirjasto sotii cb perinteitä vastaan käyttämällä loadxxxx komentoja loopissa. Screen komentoa kutsutaan loopissa keskellä peliä ja deletexxxx komentoja missä sattuu. Samassa loopissa piirrellään kuvia, soitetaan ääniä ja liikutetaan objekteja. Objektien, kuvien ja äänien kahvoja tallennellaan ja käsitellään järjen vastaisella tavalla, ja median latauspolut ovat mitä sattuu. cbResourceManager hallitsee tämän sekamelskan täysin! ;)
Voit poistaa kaikki skriptillä ladatut mediat ja ladata ne takaisin, ilman, että peli pukkaa MAV:ia. Paras ominaisuus cbResourceManagerissa on median sijainnin riippumattomuus .exe:stä. Skripti lataa median, ja ohjelma hakee valmiiksi ladatun kahvan. Kirjaston "Välimuisti" toimintojen avulla sinun ei tarvitse enää muistaa onko tuo ja tuo objekti olemassa vai ei. Se on aina valmiina käytettäväksi. Lataus palkin tekeminen ei ole koskaan ollut siistimpää.
Kommentteja, keskustelua kiitos. :mrgreen:
Attachments
cbResourceManager.zip
(korjattu, skripti puuttui)
(792.73 KiB) Downloaded 352 times
Last edited by JATothrim on Mon Dec 28, 2009 6:29 pm, edited 2 times in total.
-On selkeästi impulsiivinen koodaaja joka...
ohjelmoi C++:lla rekursiivisesti instantioidun templaten, jonka jokainen instantiaatio instantioi sekundäärisen singleton-template-luokan, jonka jokainen instanssi käynistää säikeen tulostakseen 'jea'.
KilledWhale
Tech Developer
Tech Developer
Posts: 545
Joined: Sun Aug 26, 2007 2:43 pm
Location: Liminka

Re: cbResourceManager

Post by KilledWhale »

Lisää funktiokutsuja ja jatkuvaa tiedostojen uudelleenlatailua. Ei kiitos sanon minä. Helpommalla pääsee kun opettelee koodaamaan kunnolla.
Objektien, kuvien ja äänien kahvoja tallennellaan ja käsitellään noobin järjen vastaisella tavalla, ja median latauspolut ovat mitä sattuu.
Olet varmaan isokin poika kun noin puhut noobin järjestä. Noh, kaipa se on sallittua 100% C++/IDE konkarilta :mrgreen: Virittele mielummin systeemi, jossa media talletetaan muualle muistiin ettei tarvitse kaikkea latailla uudelleen. Mahdotonta se ei ole ja kokeneelle C++ ohjelmoijalle sen ei pitäisi olla missään määrin vaikeaa. Itse olen silti vakaasti sitä mieltä, että aloittelijoidenkin on totuttava ihan normaaliin muistinhallintaan ilman välissä toimivia kikkailuja. Jossain muussa kielessä se kuitenkin tulee eteen ennemmin tai myöhemmin.
CoolBasic henkilökuntaa
Kehittäjä

cbFUN Kello
cbSDL
Whale.dy.fi

<@cce> miltäs tuntuu olla suomen paras
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: cbResourceManager

Post by tuhoojabotti »

Minulla valitteli testi skriptin olemattomuutta, vaikka liitteessä luki, että semmoinen olisi mukana. Olen samaa mieltä KW:n kanssa, että funktiokutsujahan tuossa vain tulee lisää. Saattaa helpottaa joillakin, mutta tuollaiset asiat pitäisi opetella itse tekemään.
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”
User avatar
Zero
Lead Developer
Lead Developer
Posts: 727
Joined: Sun Aug 26, 2007 2:30 pm
Location: Helsinki, Finland
Contact:

Re: cbResourceManager

Post by Zero »

JATothrim wrote:Tämä kirjasto sotii cb perinteitä vastaan käyttämällä loadxxxx komentoja loopissa. Screen komentoa kutsutaan loopissa keskellä peliä ja deletexxxx komentoja missä sattuu. Samassa loopissa piirrellään kuvia, soitetaan ääniä ja liikutetaan objekteja. Objektien, kuvien ja äänien kahvoja tallennellaan ja käsitellään järjen vastaisella tavalla, ja median latauspolut ovat mitä sattuu. cbResourceManager hallitsee tämän sekamelskan täysin! ;)
Voit poistaa kaikki skriptillä ladatut mediat ja ladata ne takaisin, ilman, että peli pukkaa MAV:ia. Paras ominaisuus cbResourceManagerissa on median sijainnin riippumattomuus .exe:stä. Skripti lataa median, ja ohjelma hakee valmiiksi ladatun kahvan. Kirjaston "Välimuisti" toimintojen avulla sinun ei tarvitse enää muistaa onko tuo ja tuo objekti olemassa vai ei. Se on aina valmiina käytettäväksi. Lataus palkin tekeminen ei ole koskaan ollut siistimpää.
Kommentteja, keskustelua kiitos. :mrgreen:
Ladatut grafiikkakahvat invalidoituvat Screen-komennon yhteydessä. Tämä on DirectX-rajoitus. Niiden käyttäminen mm. Screen-komennon tai Delete-sarjojen jälkeen ei ole turvallista.
CoolBasic henkilökuntaa
Johtava Suunnittelija
CoolBasic V3, CoolBasic Classic

http://www.coolbasic.com/blog
JATothrim
Tech Developer
Tech Developer
Posts: 606
Joined: Tue Aug 28, 2007 6:46 pm
Location: Kuopio

Re: cbResourceManager

Post by JATothrim »

Oho, tarkistin vasta tänään että oliko skripti mukana, ei näköjään ollut. Korjaan. (kauhea moka :x )
Höbz. Zerppa, kokeileppa kirjastoa hieman tarkemmin niin huomaat, että kirjasto nimenomaan kiertää invalidoituvat kahvat. Mediat poistetaan ennen Screen komentoa ja ladataan kokonaan uudestaan screen komennon jälkeen. (näin manuaalikin suositteli) Näin ollen käytössä on kokonaan uudet kahvat. Invalideja kahvoja ei käytetä misään vaiheessa kirjastoa. Vai tarkoitatko, että tämä ei ole turvallista:

Code: Select all

obj = loadobject("ukko.bmp")
deleteobject obj
screen 400,300
obj = loadobject("ukko.bmp")
moveobject obj,10
Muuten pysyvätkö ladatut äänet tallessa? Jos kyllä, kirjastossa on ylimääräistä tekniikkaa.. :)
-On selkeästi impulsiivinen koodaaja joka...
ohjelmoi C++:lla rekursiivisesti instantioidun templaten, jonka jokainen instantiaatio instantioi sekundäärisen singleton-template-luokan, jonka jokainen instanssi käynistää säikeen tulostakseen 'jea'.
skorpioni-cb
Advanced Member
Posts: 364
Joined: Wed Dec 03, 2008 3:48 pm
Location: Turku

Re: cbResourceManager

Post by skorpioni-cb »

Minun mielestä se tuhoaa vain grafiikan. Voin olla väärässä :roll:
Niin kuin moni sanoo :twisted:
En tiedä, mitä tiedän, mutta tiedän ettei se ole mitään kaunista.

I know not what I know, but I do know that it's not beautiful.
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: cbResourceManager

Post by MaGetzUb »

skorpioni-cb wrote:Minun mielestä se tuhoaa vain grafiikan. Voin olla väärässä :roll:
Niin kuin moni sanoo :twisted:
Objektit sisältävät grafiikkaa myös, jos käsistin, että sinä olet käsittänyt sen, että Screen tuhoaa vain PELKÄT imaget. :)
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
JATothrim
Tech Developer
Tech Developer
Posts: 606
Joined: Tue Aug 28, 2007 6:46 pm
Location: Kuopio

Re: cbResourceManager

Post by JATothrim »

Ajattelin että en postaa tähän ketjuun tänään, mutta söin ajatukseni.
Tottakai ne, jotka jaksavat muokata Loadxxxx komentojen parametrejä jatkuvasti, niin että mm. animaatiot toimivat, eivät tätä kirjastoa tarvitse. Jostain syystä on ihmetelty että kirjasto "vain" deletoi tavaraa ei eikä tee muuta. Tämä on mielestäni pahasti harhaan viettävä kirjaston idean kannalta. Tarkoitukseni oli tehdä simppeli skripti jonka nojalla peliin ladataan tavaraa. Tämä on paljon helpompaa kuin kirjoittaa useita Load komentoja. Virheilmoituksetkin ovat selkeämmät, eli aloittelijoille kirjasto on erittäin passeli.
Testasin tapahtuko mav objekteille, kartoille, kuville ja äänille. Tulos: vain äänet toimivat Screen komennon jälkeen.
-On selkeästi impulsiivinen koodaaja joka...
ohjelmoi C++:lla rekursiivisesti instantioidun templaten, jonka jokainen instantiaatio instantioi sekundäärisen singleton-template-luokan, jonka jokainen instanssi käynistää säikeen tulostakseen 'jea'.
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: cbResourceManager

Post by MaGetzUb »

Ihan kiva kirjastohan tämä on, mutta tuntuu aika monimutkaiselta nuo sinun kommenttisi koodissa välillä. :D off Kahva ei oo kovin mukava sana, Handle on paljon kivempi. :roll:
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
Astigma
Moderator
Moderator
Posts: 195
Joined: Sun Aug 26, 2007 5:56 pm
Location: Kuopio, Finland
Contact:

Re: cbResourceManager

Post by Astigma »

MaGetzUb wrote:Ihan kiva kirjastohan tämä on, mutta tuntuu aika monimutkaiselta nuo sinun kommenttisi koodissa välillä. :D off Kahva ei oo kovin mukava sana, Handle on paljon kivempi. :roll:
Kun ollaan Suomessa ja puhutaan suomea, kahva on kannatettavampi sana...

Plussaa JATothrimille siitä, että globaalit muuttujat ja funktiot on hyvin nimetty.
Post Reply