Eli piirrustus ohjelma, C64-meininkiä. Spriten vääntöön yms.
Oleellinen on kylllä jo kasassa ja bugi ilmotuksia otetaan vastaan.
.........................................................................................................
Näppäimet :
F1 tallentaa
F2 Lataa
F3 muuntaa piirtoalueen bmp tiedostoksi.
siis vasen Ctrl poimii värin ihan mistä vaan.(ohjeessä väärin, kuka nyt niitä lukee.)
Hiiren vasen piirtää, hiiren oikea poistaa.
Hiiren vasen poimii värin paletista.
.........................................................................................................
puutteita:
tallennus tiedoston nimeäminen.
ruudukon koon muuttaminen.
tietysti värejä lisää.
Kuvan koko 32*24 bittiä.
---------------------------------------------------------------------------------------------------------
2015-PIXELIMÖSSÖ rebooting...
PIXELIMÖSSÖ
-
- Newcomer
- Posts: 6
- Joined: Sat Nov 17, 2012 10:32 am
PIXELIMÖSSÖ
- Attachments
-
- screen cap.jpg (60.95 KiB) Viewed 15869 times
-
- pixelimosso2015.zip
- (625.64 KiB) Downloaded 532 times
Last edited by _jorghe87_ on Wed Jan 14, 2015 7:38 pm, edited 6 times in total.
Mielipiteeni ohjelmasta "Pixelimössö"
Kasibittikausi on tullut takaisin! Kun näin kuvakaappaukset, heti tuli ensimmäisenä mieleen vanhat ajat, jolloin tirkisteltiin pikselihelvettiä 5 tuuman ruudulta. Kuvakaappauksien takia minä sitten rupesinkin tätä ohjelmaa testaamaan. Melko mukavalta ohjelmanalulta tämä näytti. Kuvakaappaukset vastasivat täydellisesti kokemuksiani. En tosin testannut tallennusta, mutta nättiä jälkeä ainakin tuli. Ainoa miinus, joka madalsi tyytyväisyyttäni ohjelmaan oli lopetusteksti, et pääse tällä pitkälle, jos ohjelman sulkiessa käyttäjä saa ilmoituksen "PAINU HANEEN!". Kunhan vähän viilailet ohjelmaa, niin hyvää tulee, tosiaan niitä värejä lisää.
Piti sitä tallennustakin kokeilla. Miten tallennus on oikein toteutettu, kun ei voi tiedosto olla jo alunperin BMP-muodossa? Sanoisin melkein, että raivostuttavaa aina painaa sitä F3:a ja sitten F1:htä
Ihan mukava softa, muutamia puutteita(värit,tallennus yms) korjaamalla tämä on ihan mukava kuvankäsittelyohjelma. Voisit yrittää jotenkin optimoida tuota koodiasi, kun ei edes 32x24 kokoiseen kuvaan pikselien lätkimistä voi tehdä nopealla liikkeellä, vai onko kyse Coolbasicin heikosta suorituskyvystä? Koneestani ei voi olla vikaa, koska sovellus ei hidastele yhtään.
Piti sitä tallennustakin kokeilla. Miten tallennus on oikein toteutettu, kun ei voi tiedosto olla jo alunperin BMP-muodossa? Sanoisin melkein, että raivostuttavaa aina painaa sitä F3:a ja sitten F1:htä
Ihan mukava softa, muutamia puutteita(värit,tallennus yms) korjaamalla tämä on ihan mukava kuvankäsittelyohjelma. Voisit yrittää jotenkin optimoida tuota koodiasi, kun ei edes 32x24 kokoiseen kuvaan pikselien lätkimistä voi tehdä nopealla liikkeellä, vai onko kyse Coolbasicin heikosta suorituskyvystä? Koneestani ei voi olla vikaa, koska sovellus ei hidastele yhtään.
-
- Newcomer
- Posts: 6
- Joined: Sat Nov 17, 2012 10:32 am
Re: PIXELIMÖSSÖ
Itseasissa löysin koodista turhakkeen, esim. toi griddi tossa taustalla, myös muistin varauksessa oli turhaa kamaa.
Piirto alueen ruutu on valmiiksi joko täysinäinen boxi tai nolla boxi. Että jos hiiri on siinä ruudun sisällä
< x+10 ja < y+10 jne. ohjelma tarkistaa ruudun numeron, täyttö päälle tai pois. Jokainen ruutu on numeroitu erikseen.
Tallentaminen on toteutettu siten että: käydään läpi dim muistipaikat: x, y, täyttö, väri1, väri2, väri3.
joka sitten kirjoitetaan tiedostoksi. Lataus : tiedostosta täytetään muistipaikat: x,y,täyttö..jne. ja piirtää sen ruudulle.
Mulla oli ideana lähinnä se että isompaa kuvaa jos lähtee tekemään, niin sitten sitä sais scrollattua sielä ruudukon sisällä helpommin.
esim. 200*200 pixelinen kuva, niin se piirtäis vain 50*50 ruudukon, silloin siitä tallennuksesta olis hyötyä, jolloin
dim paikkoja tarvitaan vain 2500. Jos on tarpeen silloin sitä pystyis lukemaan tiedostosta, vähän menee kikkailuksi.
Bitmappaus hoituu ihan samalla tavalla, paitsi että koordinaatteja pitää muokata.
Toki koko homman voisi toteuttaa bmp muodossa, ja olisi huomattavasti nopeampi.
Piirto alueen ruutu on valmiiksi joko täysinäinen boxi tai nolla boxi. Että jos hiiri on siinä ruudun sisällä
< x+10 ja < y+10 jne. ohjelma tarkistaa ruudun numeron, täyttö päälle tai pois. Jokainen ruutu on numeroitu erikseen.
Tallentaminen on toteutettu siten että: käydään läpi dim muistipaikat: x, y, täyttö, väri1, väri2, väri3.
joka sitten kirjoitetaan tiedostoksi. Lataus : tiedostosta täytetään muistipaikat: x,y,täyttö..jne. ja piirtää sen ruudulle.
Mulla oli ideana lähinnä se että isompaa kuvaa jos lähtee tekemään, niin sitten sitä sais scrollattua sielä ruudukon sisällä helpommin.
esim. 200*200 pixelinen kuva, niin se piirtäis vain 50*50 ruudukon, silloin siitä tallennuksesta olis hyötyä, jolloin
dim paikkoja tarvitaan vain 2500. Jos on tarpeen silloin sitä pystyis lukemaan tiedostosta, vähän menee kikkailuksi.
Bitmappaus hoituu ihan samalla tavalla, paitsi että koordinaatteja pitää muokata.
Toki koko homman voisi toteuttaa bmp muodossa, ja olisi huomattavasti nopeampi.
- Misthema
- Advanced Member
- Posts: 312
- Joined: Mon Aug 27, 2007 8:32 pm
- Location: Turku, Finland
- Contact:
Re: PIXELIMÖSSÖ
Hienon näköistä! Ei voi muuta kuin tykätä 8-bit tyylisistä pikkuohjelmista ja muista...
Ideoita joita voisit mahdollisesti toteuttaa:
Oma kuvaformaatti:
- Kuvan leveys
- Kuvan korkeus
- Jokainen pikseli olisi tallennettu paletin ID luvuilla, riippuen paletin koosta. Jos paletissa on 256 väriä, ID:t olisivat 0 -> 255, jne.
- Esimerkki formaatin tallentamisesta:
Paletit olisivat myös erikseen tallennettavissa: ID0, väri, ID1, väri, ID2, väri........IDn, väri.
Kuvatiedoston lataamiseen olisi funktio jolle syötetään parametreinä kuvatiedoston nimi ja palettitiedoston nimi. Näin kuvia voisi ladata ties miten monella eri paletilla.
Kuvien luonti CB:n puolella tietysti tapahtuisi MakeImage():lla ja PutPixel-komennoilla.
Ideoita joita voisit mahdollisesti toteuttaa:
Oma kuvaformaatti:
- Kuvan leveys
- Kuvan korkeus
- Jokainen pikseli olisi tallennettu paletin ID luvuilla, riippuen paletin koosta. Jos paletissa on 256 väriä, ID:t olisivat 0 -> 255, jne.
- Esimerkki formaatin tallentamisesta:
Code: Select all
Function SavePixelImage(img, name As String)
// Avataan tiedosto 'name' kirjoitettavaksi
imgFile = OpenToWrite(name)
// Tallennetaan tiedostoon kuvan leveys ja korkeus
WriteInt imgFile, leveys
WriteInt imgFile, korkeus
// Kirjoitetaan tiedostoon jokainen pikseli.
For y = 0 To korkeus -1
For x = 0 To leveys -1
// Miten ikinä oletkaan pikselisi tallentanut, tässä kuitenkin esimerkki.
WriteInt imgFile, getImagePixelID(img, x, y)
Next x
Next y
CloseFile imgFile
EndFunction
Kuvatiedoston lataamiseen olisi funktio jolle syötetään parametreinä kuvatiedoston nimi ja palettitiedoston nimi. Näin kuvia voisi ladata ties miten monella eri paletilla.
Kuvien luonti CB:n puolella tietysti tapahtuisi MakeImage():lla ja PutPixel-komennoilla.
Re: PIXELIMÖSSÖ
En nyt voi olla mainostamatta, tekemäni GIF-tallennin olisi tähän hommaan sopiva, ja pienellä muokkauksella saisi tuon paletin lataamisen toisesta tiedostosta. Näin tiedostot säilyvät pienempinä ja avattavissa monilla muilla ohjelmillaMisthema wrote:Kuvatiedoston lataamiseen olisi funktio jolle syötetään parametreinä kuvatiedoston nimi ja palettitiedoston nimi. Näin kuvia voisi ladata ties miten monella eri paletilla.
Kuvien luonti CB:n puolella tietysti tapahtuisi MakeImage():lla ja PutPixel-komennoilla.
-
- Devoted Member
- Posts: 718
- Joined: Wed Nov 03, 2010 7:56 pm
- Location: Joku piste pohjoisessa.
Re: PIXELIMÖSSÖ
Äläkä unohda animaatiomahdollisuutta Se on se paras osa.axu wrote:En nyt voi olla mainostamatta, tekemäni GIF-tallennin olisi tähän hommaan sopiva, ja pienellä muokkauksella saisi tuon paletin lataamisen toisesta tiedostosta. Näin tiedostot säilyvät pienempinä ja avattavissa monilla muilla ohjelmillaMisthema wrote:Kuvatiedoston lataamiseen olisi funktio jolle syötetään parametreinä kuvatiedoston nimi ja palettitiedoston nimi. Näin kuvia voisi ladata ties miten monella eri paletilla.
Kuvien luonti CB:n puolella tietysti tapahtuisi MakeImage():lla ja PutPixel-komennoilla.
<Ize> Pitäs tehä allekirjotus..
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...
<Ize> Vois keksiä jonkin nasahtavan sanonnan..
<Ize> Siitä tulis upea legenda ja kaikki vaihtaisivat allekirjoituksensa siihen.
<Ize> Ehkä ei kuitenkaa...
-
- Newcomer
- Posts: 6
- Joined: Sat Nov 17, 2012 10:32 am
Re: PIXELIMÖSSÖ
2015-PIXELIMÖSSÖ rebooting...
Re: PIXELIMÖSSÖ
Liekkö sitten Coolbasickin heikko suorituskyky, mutta hieman takkuista oli piirtää.
Muuten täytyy sanoa, että oikein mainio projektin alku, vaikka tekemistä vielä riittääkin.
Menestystä projektillesi!
Muuten täytyy sanoa, että oikein mainio projektin alku, vaikka tekemistä vielä riittääkin.
Menestystä projektillesi!