Kuvan muuttaminen CB:n koodiksi.

Oletko tehnyt jotain, mistä muut voisivat hyötyä. Postita vinkit tänne.
User avatar
Eräs cb koodaaja
Active Member
Posts: 126
Joined: Wed Aug 29, 2007 3:55 pm

Kuvan muuttaminen CB:n koodiksi.

Post by Eräs cb koodaaja » Wed Feb 13, 2008 8:30 pm

Niin kuin otsikko jo kertookin funktio muuttaa kuvan cb:n koodiksi. Hyöty lienee lähinnä siinä, että kuvat saa pakattua suoraan exee(kuka tahansa ei saa niitä käyttöönsä). Soveltuu HYVIN vain pieniin kuviin, koska suuret kuvat aiheuttavat latausnopeuden huimaa kasvua.

Code: Select all

Function Kuvamuunnin(in$,out$)
    file = OpenToWrite(out$) 
    img  = LoadImage(in$)

    Lock Image(img)
    For a = 1 To ImageWidth(img)
        For b = 1 To ImageHeight(img)
            PickImageColor2 img,a,b
            WriteLine file,"Color "+getRGB(RED)+","+getRGB(GREEN)+","+getRGB(BLUE)+": Dot "+a+","+b
        Next b
    Next a
    Unlock Image(img)
    CloseFile file
EndFunction

Kuvamuunnin("media\guy.bmp","kuva.cb")
Koodissa myös esimerkki.
Tiimit ja tuotokset:
RE:Ydintuho
Drahtlose:Infernalisch, Pienet pelit

User avatar
Vouldenhaul
Active Member
Posts: 211
Joined: Tue Aug 28, 2007 3:48 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by Vouldenhaul » Wed Feb 13, 2008 9:07 pm

En oo tota hommaa testannut, tai mittään, mutta tietenkin nyt kaverin koodii pitää tulla kommentoimaa... Testaan tota sit, kun ehdin, jos ehdin. Luottakaa Erääseen CB koodaajaan, mukava tyyppi, koodaustaidoista en tiiä, mutta ainakin koodaa mua paremmin. :? Se saa esitellä tän systeeminsä mulle joku päivä, tai vaik nyt meses, tuun sen jälkee ylistää tätä lissää... :P
Some stories can't be told by words...
Some legends are meant to die...
Some bloodlines must come to an end...


Metal Gear Solid 4: Guns of the Patriots
Sneaking Out 12.06.2008

User avatar
otto90x
Advanced Member
Posts: 349
Joined: Mon Aug 27, 2007 9:00 pm
Location: Lapinjärvi, Finland
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by otto90x » Wed Feb 13, 2008 9:09 pm

Ääh, tää on kyllä aika turha ja armottoman hidas. Voihan sitä cbresourceakin käyttää.
Otto Martikainen a.k.a. MetalRain, otto90x, kAATOSade.
Runoblogi, vuodatusta ja sekoiluja.

M.R
Active Member
Posts: 102
Joined: Sat Dec 22, 2007 4:05 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by M.R » Thu Feb 14, 2008 8:14 pm

Voisi yrittää pakata sitä ohjelman sisäiseen Data-listaan/listoihin.Ja mustat pikselit voisi jättää laittamatta.

User avatar
Eräs cb koodaaja
Active Member
Posts: 126
Joined: Wed Aug 29, 2007 3:55 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by Eräs cb koodaaja » Thu Feb 14, 2008 10:05 pm

Tulen tuota vielä laittamaan ja mustan värin voi kyllä jättää pois. Laitan päivityksiä kunhan kerkeän.
Tiimit ja tuotokset:
RE:Ydintuho
Drahtlose:Infernalisch, Pienet pelit

User avatar
atomimalli
Moderator
Moderator
Posts: 227
Joined: Wed Aug 29, 2007 3:55 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by atomimalli » Sat Feb 16, 2008 10:51 am

Pienenä aikaa ja vaivaa säästävänä vinkkinä kerron että getpixel2 on keksitty. Myös sen että vanhoilta foorumeilta löytyy näitä jo useiden vuosien takaa.
Lukitseminen ei tuossa tapauksessa taida auttaa yhtään mitään :o.

Datan käyttöön kannattaa myös tutustua.

User avatar
SPuntte
Tech Developer
Tech Developer
Posts: 650
Joined: Mon Aug 27, 2007 9:51 pm
Location: Helsinki, Finland
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by SPuntte » Sat Feb 16, 2008 10:52 pm

Tämä on WANHA juttu. Vanhoilta foorumeilta löytyy näitä useampikin kipale. Tosiaan, PutPixel2'a ja GetPixel2'a käyttämällä tästä saa huomattavasti nopeamman. Tosin on se silti suurilla kuvilla tuskallisen hidas.

Offtopic:
atomimalli wrote:Datan käyttöön kannattaa myös tutustua.

Tietääkseni nykyisen CBn Data-systeemi bugaa. Kokeilepa ajaa manuaalin oma esimerkki aiheesta..
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

CoolPhysicsEngine | MissileSystem | Jana-ympyrä -törmäys | cbSimpleTexture | CoolCPLX

User avatar
Koodiapina
Forum Veteran
Posts: 2396
Joined: Tue Aug 28, 2007 4:20 pm
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by Koodiapina » Sat Feb 16, 2008 11:20 pm

SPuntte wrote:Tietääkseni nykyisen CBn Data-systeemi bugaa. Kokeilepa ajaa manuaalin oma esimerkki aiheesta..
OFFTOPIC: Ei ehkä kannata kokeilla. Itselläni meni CB ihan sekaisin. Eka CB meni lukkoon ja sitten kun avasin uudestaan niin se luulee että edellinen ohjelma on päällä eikä suostu tulkkaamaan vaikka tehtävienhallinnassa ei näy mitään cb ohjelmaa.
Olen liian älykäs ollakseni väärässä. Jos olet kanssani eri mieltä, suosittelen sinua pohtimaan omaa elämänkatsomustasi ja sen perusteita.

M.R
Active Member
Posts: 102
Joined: Sat Dec 22, 2007 4:05 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by M.R » Mon Feb 18, 2008 5:39 pm

Grandi wrote:
SPuntte wrote:Tietääkseni nykyisen CBn Data-systeemi bugaa. Kokeilepa ajaa manuaalin oma esimerkki aiheesta..
OFFTOPIC: Ei ehkä kannata kokeilla. Itselläni meni CB ihan sekaisin. Eka CB meni lukkoon ja sitten kun avasin uudestaan niin se luulee että edellinen ohjelma on päällä eikä suostu tulkkaamaan vaikka tehtävienhallinnassa ei näy mitään cb ohjelmaa.
Offtopic:
Se kyllä toimii mutta esimerkissä on virhe(en tajua mistä johtuu).
Tässäpä esimerkki datan käytöstä:

Code: Select all

Restore testi
Print Read()
WaitKey
End

testi:
Data "Toimiihan tämä CB:n Data."

User avatar
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by tuhoojabotti » Mon Feb 18, 2008 7:30 pm

kokeilin ja toimi mutta kun yritin korjata cb:n esimerkin niin sainkin 6X6 kartan toimimaan sekä 3 eri väriä :D datan arvon mukaan mutta aina tuli mav esciä painettaessa ja windows error... en ainakaan peliäni luottaisi CB:n datan varaan...
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”

User avatar
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Kuvan muuttaminen CB:n koodiksi.

Post by koodaaja » Mon Feb 18, 2008 8:10 pm

Itsekin pohdin tuota dataa pitkästä aikaa ja jostain syystä kannettavallani se toimii mainiosti, muttei inahdakaan suurimmalla osalla muista koneista. O.o Mikä lie konekohtainen ihme, mutta pääsääntöisesti sitä ei pidä käyttää, niin harvalla toimii. (Ellei exeksi kääntäminen muuta tilannetta? en ole kokeillut..)

User avatar
Eräs cb koodaaja
Active Member
Posts: 126
Joined: Wed Aug 29, 2007 3:55 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by Eräs cb koodaaja » Wed Feb 20, 2008 6:37 pm

PickImageColor2 vaatii lukituksen ja on hieman PickImageColoria nopeampi. Voisin yrittää parannella tätä vielä, mutta tuskin kukaan tästä paljoa hyötyy.
EDIT:

Mulla data toimii VÄLILLÄ kun ottaa virheilmotukset pois ERRORS OFF komennolla

Tiimit ja tuotokset:
RE:Ydintuho
Drahtlose:Infernalisch, Pienet pelit

User avatar
elmo123
Active Member
Posts: 153
Joined: Sun Sep 09, 2007 4:19 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by elmo123 » Sat Feb 23, 2008 11:26 am

Plääh, tällainen on jo tehty, vanhoilla foorumeilla taisi olla. Include-koodista tulee liian pitkä. Eikö voisi ensin tehdä pienen funktion, joka lukee merkkijonosta
jokaisen pikseliarvon erikseen. Ensin otetaan kuvan leveys ja korkeus(64x64|) ja pystyviiva erottimena. Seuraavaksi tehdään tyhjä kuva eli joo = MakeImage(w, h). Sitten puskuriksi Lock Image(joo) ja

Code: Select all

count = 1
For x = 0 To w 
For y = 0 To h
PutPixel2 x, y, Int(GetWord(stri$), counter, "|")
count+1
Next y
Next x
Unlock Image(joo)
Return joo
Sitten teet ohjelman, jossa näkyy tyhjä lista, johon lataat kuvatiedostoja ja klikkaat vain Pack ja se pakkaa kuvatiedostot. (kuva1 = ExtractImage(wxh|ekapiksel|tokapiksel|kolmaspiksel|jne.|jne...))
Kiinnostuin pelien tekemisestä ennen 1. luokkaa.
Sitten 3. luokalla tuli CB. Ja siitä se alkoi.

Blender! TF2! CB! Game Maker! Nokia-mollaus! Kitaransoitto! Breakdance! MadTracker! Minecraft!

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Kuvan muuttaminen CB:n koodiksi.

Post by MaGetzUb » Mon Feb 25, 2008 3:07 pm

elmo123 wrote:Plääh, tällainen on jo tehty, vanhoilla foorumeilla taisi olla. Include-koodista tulee liian pitkä. Eikö voisi ensin tehdä pienen funktion, joka lukee merkkijonosta
jokaisen pikseliarvon erikseen. Ensin otetaan kuvan leveys ja korkeus(64x64|) ja pystyviiva erottimena. Seuraavaksi tehdään tyhjä kuva eli joo = MakeImage(w, h). Sitten puskuriksi Lock Image(joo) ja
Tuostahan jo sanottiinkin että näitä on ollut vanhoill foorumeilla iha hulluna. Minä en kyllä löydä mitää käyttöä tollaaselle väkerrykselle, mieluummin teen oman kuva formaatin. ;)
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Kuvan muuttaminen CB:n koodiksi.

Post by koodaaja » Mon Feb 25, 2008 3:34 pm

programmer of DSG wrote:
elmo123 wrote:Plääh, tällainen on jo tehty, vanhoilla foorumeilla taisi olla. Include-koodista tulee liian pitkä. Eikö voisi ensin tehdä pienen funktion, joka lukee merkkijonosta
jokaisen pikseliarvon erikseen. Ensin otetaan kuvan leveys ja korkeus(64x64|) ja pystyviiva erottimena. Seuraavaksi tehdään tyhjä kuva eli joo = MakeImage(w, h). Sitten puskuriksi Lock Image(joo) ja
Tuostahan jo sanottiinkin että näitä on ollut vanhoill foorumeilla iha hulluna. Minä en kyllä löydä mitää käyttöä tollaaselle väkerrykselle, mieluummin teen oman kuva formaatin. ;)
Mutta vaikka olisi kuinka hieno kuvaformaatti, et saa kuvia exeen sisälle, ja se on nimenomaan tämän idea; ei tarvitse erillisiä kuvia.

User avatar
SPuntte
Tech Developer
Tech Developer
Posts: 650
Joined: Mon Aug 27, 2007 9:51 pm
Location: Helsinki, Finland
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by SPuntte » Mon Feb 25, 2008 6:05 pm

koodaaja wrote:Mutta vaikka olisi kuinka hieno kuvaformaatti, et saa kuvia exeen sisälle, ja se on nimenomaan tämän idea; ei tarvitse erillisiä kuvia.
Niinpä, ja järkevän kokoisilla (pienillä) ja kohtuullisella määräällä kuvia tämä on vielä ihan tarkoituksenmukaista, ei tarvitse miettiä pakettia kootessa, että mitäs kaikkea nyt tarvittiinkaan. Tosin kopioinninestossa tämä ei juuri auta, kun tämäntasoisessa pelissä ei tule mitään shadereita päälle 'pilaamaan' grafiikkaa. Eli ihan PrintScreenillä ja pienellä muokkauksella onnistuu. Tosin animaation kopiointi on vähän työläämpää mutta silti. Huijauksenestossa tämä puolestaan toimii hyvin.
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

CoolPhysicsEngine | MissileSystem | Jana-ympyrä -törmäys | cbSimpleTexture | CoolCPLX

User avatar
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Kuvan muuttaminen CB:n koodiksi.

Post by MaGetzUb » Mon Feb 25, 2008 7:37 pm

Juu, mutta tekee sellaisen kuva formaatin, mitä ei ihan joka Sälli/Jehu/Jamppa saa muokattua.
EDIT:

Niin ja tohon tarttee aivan hirveen kokoosen taulukon, että minä en ainakaan suosittele, tehkää te muut miten tahdotte, mutta mun aika ei riitä tohon; koska pitää saada jotain aikaiseksi.

Last edited by MaGetzUb on Mon Feb 25, 2008 7:43 pm, edited 1 time in total.
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
Eräs cb koodaaja
Active Member
Posts: 126
Joined: Wed Aug 29, 2007 3:55 pm

Re: Kuvan muuttaminen CB:n koodiksi.

Post by Eräs cb koodaaja » Mon Feb 25, 2008 7:41 pm

Milläs semmosen teet? Jos julkaisee lähdekoodin niin kaikki näkee miten se on tehty ja jos ei niin kukaan ei pysty käyttämään. Jo pelkästään funktiosta, joka sen lataa, pystyy lukemaan formaatin rakenteen.
Tiimit ja tuotokset:
RE:Ydintuho
Drahtlose:Infernalisch, Pienet pelit

User avatar
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Kuvan muuttaminen CB:n koodiksi.

Post by koodaaja » Mon Feb 25, 2008 8:39 pm

Eräs cb koodaaja wrote:Milläs semmosen teet? Jos julkaisee lähdekoodin niin kaikki näkee miten se on tehty ja jos ei niin kukaan ei pysty käyttämään. Jo pelkästään funktiosta, joka sen lataa, pystyy lukemaan formaatin rakenteen.
Ei julkaise :p

Mutta jos DATA:n saa pelittämään, niin hyvin toimii. Ja ainahan voi käyttää merkkijonoa taulukon sijaan, toimiihan se niinkin. Joskin.. no jaa, kikkailuksi se menee joka tapauksessa. Ja tosiaan, pieniin projekteihin (ei montaa kymmentä kuvaa, etenkään isoja) tämä sopii, muttei kovin hyvin muuhun. Ja totta, tämä on CB:llä ainoastaan kätevyyttä lisäävä, ei kopioinnin estämistä poistava kikka.

EDIT: tuhoojabotti, erittäin hyvä huomio : D
Last edited by koodaaja on Mon Feb 25, 2008 8:43 pm, edited 1 time in total.

User avatar
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: Kuvan muuttaminen CB:n koodiksi.

Post by tuhoojabotti » Mon Feb 25, 2008 8:41 pm

Eräs cb koodaaja wrote:Soveltuu HYVIN vain pieniin kuviin, koska suuret kuvat aiheuttavat latausnopeuden huimaa kasvua.
tarkoitat varmaan latausajan huimaa kasvua ;) anteeksi pilkunviilaus :P
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”

Post Reply