PIXELIMÖSSÖ

Jaa meneillään olevat projektisi tai valmiit pelit muun yhteisön kanssa täällä.
Post Reply
_jorghe87_
Newcomer
Posts: 6
Joined: Sat Nov 17, 2012 10:32 am

PIXELIMÖSSÖ

Post by _jorghe87_ »

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...
Attachments
screen cap.jpg
screen cap.jpg (60.95 KiB) Viewed 15408 times
pixelimosso2015.zip
(625.64 KiB) Downloaded 511 times
Last edited by _jorghe87_ on Wed Jan 14, 2015 7:38 pm, edited 6 times in total.
Jottatavu
Newcomer
Posts: 7
Joined: Tue Nov 13, 2012 6:27 pm
Location: Kuhmo

Mielipiteeni ohjelmasta "Pixelimössö"

Post by Jottatavu »

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ä :D

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.
_jorghe87_
Newcomer
Posts: 6
Joined: Sat Nov 17, 2012 10:32 am

Re: PIXELIMÖSSÖ

Post by _jorghe87_ »

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.
User avatar
Misthema
Advanced Member
Posts: 312
Joined: Mon Aug 27, 2007 8:32 pm
Location: Turku, Finland
Contact:

Re: PIXELIMÖSSÖ

Post by Misthema »

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:

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
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.
User avatar
axu
Devoted Member
Posts: 854
Joined: Tue Sep 18, 2007 6:50 pm

Re: PIXELIMÖSSÖ

Post by axu »

Misthema 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.
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 ohjelmilla ;)
Jos tämä viesti on kirjoitettu alle 5 min. sitten, päivitä sivu. Se on saattanut jo muuttua :roll:
Image
naputtelija
Devoted Member
Posts: 718
Joined: Wed Nov 03, 2010 7:56 pm
Location: Joku piste pohjoisessa.

Re: PIXELIMÖSSÖ

Post by naputtelija »

axu wrote:
Misthema 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.
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 ohjelmilla ;)
Äläkä unohda animaatiomahdollisuutta :D Se on se paras osa.
<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...
_jorghe87_
Newcomer
Posts: 6
Joined: Sat Nov 17, 2012 10:32 am

Re: PIXELIMÖSSÖ

Post by _jorghe87_ »

2015-PIXELIMÖSSÖ rebooting...
User avatar
CCE
Artist
Artist
Posts: 650
Joined: Mon Aug 27, 2007 9:53 pm

Re: PIXELIMÖSSÖ

Post by CCE »

Jännitys tiivistyy!!!
MrMonday
Advanced Member
Posts: 378
Joined: Fri Oct 10, 2008 2:35 pm

Re: PIXELIMÖSSÖ

Post by MrMonday »

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!
Post Reply