ChaosBasic [version 0.0.2.4]

Muu yhteisön välinen keskustelu.
User avatar
Sami345
Advanced Member
Posts: 349
Joined: Fri Aug 31, 2007 4:52 pm
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by Sami345 » Wed Jan 02, 2008 1:47 pm

Käänsin CoolBasic kiellelle tekemäni funktion 3DText ChaosBasic kielelle. Tämä siis tulostaa isometristä tekstiä.

Käyttö:
Text3D(x,y,teksti,korkeus,r,g,b)

x = Tekstin x koordinaatti.
y = Tekstin y koordinaatti.
teksti = Teksti joka tulostetaan.
korkeus = Tekstin korkeus.
r = Punainen värikomponentti. Huom! Piirtoväri asettuu täksi.
g = Vihreä värikomponentti. Huom! Piirtoväri asettuu täksi.
b = Sininen värikomponentti. Huom! Piirtoväri asettuu täksi.

Funktio ja esimerkki:

Code: Select all

Var f As Font = New Font
f.Load("arial",80)
Screen.SetFont f

Repeat
	Text3D(0,0,"Hei",10,0,164,255)
	Screen.Draw
Forever

Function Text3D(Var x,Var y,Var teksti As String,Var korkeus,Var r,Var g,Var b) As Void
	Var i = 0
	Var newr
	Var newg
	Var newb
	For i = 1 To korkeus
		newr = r-i*5
		newg = g-i*5
		newb = b-i*5
		If newr < 0 Then
			newr = 0
		EndIf
		If newg < 0 Then
			newg = 0
		EndIf
		If newb < 0 Then
			newb = 0
		EndIf
		Screen.SetColor newr,newg,newb
		Screen.Text x+i,y+i,teksti
	Next
	Screen.SetColor r,g,b
EndFunction
Projektit: Fiperus - Jäädytetty pidemmäksi aikaa.
Voitot: Viikkokisa XIII, Pikapelikisa 3, Pikapelikisa 13
http://www.sami345.tk/

User avatar
Misthema
Advanced Member
Posts: 312
Joined: Mon Aug 27, 2007 8:32 pm
Location: Turku, Finland
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by Misthema » Wed Jan 02, 2008 4:22 pm

Perkules.. Turha pyyntö, mutta kovasti kaipaisin HotFixinä sellasta missä funktiot toimisi taulukoiden kanssa oikein.. Ja yleensäkin muuttujien.. mitään... :/

User avatar
Pie2
Member
Posts: 55
Joined: Mon Aug 27, 2007 8:14 pm
Location: Porvoo

ChaosBasic ide

Post by Pie2 » Sat Jan 19, 2008 7:15 pm

Elikkä väänsin tässä Cb:llä pienen CHB iden. Tämän piti olla viikonloppuprojekti, mutta aikaa meni hiukan enemmän.
Olen tyytyväinen tulokseen, sain tehtyä jonkinmoisen editorin.

Koska seuraavaksi joku heittää että "raskas" niin ajattelin nyt tässä selventää että yleensä tekstinkäsittelyohjelmat eivät käytä directX:ää. :P
EN ole laittanut kauheasti aikaa optimointiin koska tuskin tätä kukaan niin tosissaan käyttää. CHB:lle kun on tulossa oikea ide.

Olisin tehnyt CHB:llä, mutta tiedostonkäsittelykomennot uupuvat.

EDIT: lisäsin-end,home,pgup,pgdwn
KUVA
LATAA CHBi 1.0 ... pura tiedostot CHB:n hakemistoon
Ominaisuksia:
- uusi/avaus/tallennus/pikatallennus/kääntö/ajo
- avaus notepadilla
- debuggeriksikö sitä lootaa kutsutaan joka ilmoittaa virheistä?... no semmonen ainakin.
- värjää virheellisten rivien numeron
- asetuksista voi säätää jotain kamaa
- toimiva inputsysteemi? shift,alt etc... (jos jokin puuttuu, niin ilmoittakaa, voin ehkä lisätä)
Puutteita:
- Redo
- Koodin värjäys(vosin joskus huvikseen tehdä yksinkertaisen värjäyksen)
- tekstin valinta PUUTTUU... tämä olisi melkein pakollinen lisä, mutta se jäi nyt ainakin tekemättä
Bugeista saa ilmoittaa. : )
Since 24-March 05

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

Re: ChaosBasic [version 0.0.2.4]

Post by MaGetzUb » Sun Jan 20, 2008 3:32 pm

Hieno editori, ulko-asu on sopivan yksinkertainen.
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.

User avatar
Dande
Active Member
Posts: 193
Joined: Tue Aug 28, 2007 4:30 pm

Re: ChaosBasic [version 0.0.2.4]

Post by Dande » Tue Feb 05, 2008 7:44 pm

Kuinkas tämä edistyy?

User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by Dibalo » Tue Feb 05, 2008 9:18 pm

- Luokat valmiit.
- Editori 90% valmis.
- Uudet funkkarit/luokat 0% valmis.
- Manuaali 5 %.
- Kotisivut 0 %.

Laitanpa allekirjoitukseeni edistymisestä hieman tietoa. ;)
The darkest spells can be found from
http://tunkkaus.blogspot.fi

User avatar
Myst!c
Advanced Member
Posts: 259
Joined: Fri Dec 21, 2007 12:49 pm
Location: Kemi

Re: ChaosBasic [version 0.0.2.4]

Post by Myst!c » Tue Feb 05, 2008 10:32 pm

Hehee hienoa. :)

Latasin tämän ajat sitten ja ajattelin sen "ohuutta", tajusin että se ei ole läheskään valmis vielä. :P
En malta odottaa että pääsee kokeilemaan tätä. :)
Every Legend Has A Start!

User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by Dibalo » Tue Feb 05, 2008 10:35 pm

The darkest spells can be found from
http://tunkkaus.blogspot.fi

User avatar
Myst!c
Advanced Member
Posts: 259
Joined: Fri Dec 21, 2007 12:49 pm
Location: Kemi

Re: ChaosBasic

Post by Myst!c » Tue Feb 05, 2008 11:11 pm

Dibalo wrote:Näyttää siltä, että M$ voitti tämän erän. Pitää tehdä näköjään komentorivi-kääntäjä...

Mutta mutta, sain tässä viikonloppuna ju-jutsussa uuden vyöarvon, joten sen kunniaksi julkaisen jonkinlaisen kivan demon ChaosBasicin enginestä (siis aivan oikeasta enginestä, ei mistään testistä...) lähiaikoina. 8-)
Mahtava ulkoasu!!

Ja tuotahan voi tietenkin myöhemmin muutella? :) Ja hieno keksintö toi "screensplitter". :)
Every Legend Has A Start!

User avatar
anttipanda
Active Member
Posts: 248
Joined: Mon Aug 27, 2007 9:23 pm
Location: Oulu

Re: ChaosBasic

Post by anttipanda » Wed Feb 06, 2008 12:17 am

Myst!c wrote:Ja hieno keksintö toi "screensplitter". :)
Keksintö? Suora laina ainakin Visual Studiosta...
#edit: Nvm, katsoin että 2. kuvassa oli sama tiedosto splitattu kahteen näkymään...
OoO

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

Re: ChaosBasic [version 0.0.2.4]

Post by SPuntte » Wed Feb 06, 2008 12:28 am

Hienoa, että homma etenee.

Voihan (ainakin sitten tulevaisuudessa :) ) kahdella eri "splitillä" käsitellä samaa tiedostoa? Tämä on kätevää joissain tilanteissa, ettei tarvitse jatkuvasti hyppiä koodissa ylös alas.
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

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

Flip
Newcomer
Posts: 19
Joined: Tue Aug 28, 2007 8:19 pm

Re: ChaosBasic [version 0.0.2.4]

Post by Flip » Sun Feb 17, 2008 1:01 am

Meinasitko laittaa ChB:hen sisäänrakennetun törmäyksentunnistuksen ja siihen reagoimisen (kuten coolbasicissa)? Mun mielestä se olisi tärkeä ominaisuus.
The Annihilation - FPS-peli työn alla.

User avatar
Pie2
Member
Posts: 55
Joined: Mon Aug 27, 2007 8:14 pm
Location: Porvoo

Re: ChaosBasic [version 0.0.2.4]

Post by Pie2 » Sun Feb 17, 2008 2:47 pm

Flip wrote:Meinasitko laittaa ChB:hen sisäänrakennetun törmäyksentunnistuksen ja siihen reagoimisen (kuten coolbasicissa)? Mun mielestä se olisi tärkeä ominaisuus.
Eikös tuo sitten jo perjaatteessa vaadi objektimoottoria, että siitä olisi mitään hyötyä? Tarpeellisia komentoja olisivat ainoastaan boxoverlap ja imagescollide.
Since 24-March 05

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

Re: ChaosBasic [version 0.0.2.4]

Post by tuhoojabotti » Sun Feb 17, 2008 4:59 pm

entä imagesoverlaps ? :D
Imagedev.tuhoojabotti.com — “Programmer (noun): An organism that turns caffeine into code.”

User avatar
valscion
Moderator
Moderator
Posts: 1587
Joined: Thu Dec 06, 2007 8:46 pm
Location: Espoo
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by valscion » Sun Feb 17, 2008 6:19 pm

tuhoojabotti wrote:entä imagesoverlaps ? :D
Kyllä se imagescollide ajaa ihan saman asian.
cbEnchanted, uudelleenkirjoitettu runtime. Uusin versio: 0.4.1 — Nyt myös sorsat GitHubissa!
NetMatch - se kunnon nettimättö-deathmatch! Avoimella lähdekoodilla varustettu
vesalaakso.com

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

Re: ChaosBasic [version 0.0.2.4]

Post by SPuntte » Tue Feb 19, 2008 1:19 am

Anteeksi OffTopic. On vaan pakko selventää vähän käsitteitä.

OFFTOPIC
Pie2 wrote:
Flip wrote:Meinasitko laittaa ChB:hen sisäänrakennetun törmäyksentunnistuksen ja siihen reagoimisen (kuten coolbasicissa)? Mun mielestä se olisi tärkeä ominaisuus.
Eikös tuo sitten jo perjaatteessa vaadi objektimoottoria, että siitä olisi mitään hyötyä? Tarpeellisia komentoja olisivat ainoastaan boxoverlap ja imagescollide.
Se, että törmäys tunnistetaan tai että siihen reagoidaan, ovat kaksi ihan eri asiaa.

Törmäyksen havaitseminen, toisin sanoen, että
1. ideaalitapauksessa kahden geometrisen kappaleen rajapinnat kohtaavat
taikka
2. kaksi kappaletta ovat "virheellisesti" jo päällekäin,
on täysin puhdasta matematiikkaa, tai siis ihan oikeastaan geometriaa. Laskutoimituksina se tarkoittaa vektoreihin ja matriiseihin liittyvän matematiikan soveltamista. Käytännössä homma on "helppo" toteuttaa erilaisten primitiivien (2D: ympyrä, kolmio, suorakaide, jne; 3D: pallo, suorakulmainen särmiö, kartio, lieriö, jne) välisillä tarkasteluilla. On siis pakko idealisoida joitakin kappaleita yksinkertaisemman muotoisiksi kuin ne todellisuudessa ovat. Monimutkaisempi kokonaisuus (esim. auto, robotti, lentokone) voidaan toteuttaa luomalla primitiiveistä kokonaisuus, jossa kaikki osaset vaikuttavat kaikkiin muihin.

Törmäykseen reagoiminen edellyttää paljon laajempaa kokonaisuutta. Se vaatii kokonaista logiikka- ja fysiikkamoottoria. Ilman liikettä ja pyörimistä ei olisi törmäyksiä, joten ennen kuin törmäykset voidaan määritellä täytyy kaikki niihin vaikuttavat osatekijät määritellä. Ja määrittelyn jälkeen kaikki täytyy vielä simuloida.[/i][/size]

Tämän jälkeen sitten ihan asiaa, ChB'n liittyvää.

Se millainen ChB'sta tulee, riippuu paljolti tekijästä Dibalosta ja hänen ajatuksistaan/päämääristään, jne.

Tulikin tästä juuri mieleeni, kannattaako kielestä alkaa tekemään "uutta CBtä", jossa hyvin suuri osa perimoottorista toimii kielen sisäänrakennettujen ominaisuuksien päällä. Se on toki aloittelijaystävällinen ja helppokäyttöinen, mutta toisaalta taas matalampaan tasoon tottuneelle rajoittavaa. Lisäksi suurempi määrä koodia tarkoittaa myös enemmän bugeja. Toisinsanoen kieltä, joka sisältää paljon sisäänrakennettuja ominaisuuksia, täytyy testata paljon syvällisemmin. Myös nopeus saattaa kärsiä, mistä en tosin ole kovin hyvin perillä.

Vaihtoehto tälle olisi C++'aa ja muita oliokieliä lähemmin muistuttava ChB. Kohtuullisen yksinkertaisen pohjan päälle (perusrakenteet, olio-ominaisuudet, matematiikka, tärkeimmät rajapinnat) luotaisiin mahdollisimman selkeitä, tehokkaita, nopeita, helppokäyttöisiä ja hyvin dokumentoituja kirjastoja, kuten objektimoottori, jotka olisi liitetty itse IDE + kääntäjä + kielen dokumentaatio -pakettiin hyvinkin saumattomasti jolloin käyttäjä- ja erityisesti aloittelijaystävällisyys pysyisi vielä hyvänä.
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

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

User avatar
Dibalo
Advanced Member
Posts: 298
Joined: Mon Aug 27, 2007 8:12 pm
Location: Espoo, Finland
Contact:

Re: ChaosBasic [version 0.0.2.4]

Post by Dibalo » Tue Feb 19, 2008 1:37 am

Nuo ovat viisaita sanoja. Pyrin tekemään niin, että käyttäjän on mahdollista luoda rajapintoja, jotka on helppo linkittää ohjelmaan vain Includettamalla rajapinnan tiedosto lähdekoodiin. Lisäksi suunnitelmissani on tarjota editori, jolla rajapinnat voidaan dokumentoida ja niistä voidaan tehdä asennuspaketteja, jotka integroituvat Kaaoksen manuaaliin (samankaltainen kuin CB SDK). Tekoprosessi on tämä:
1) Käyttäjä luo rajapinnan (funktioita, luokkia)
2) Käyttäjä luo dokumentaation ohjelmalla
3) Rajapinta ja dokumentaatio käännetään asennuspaketiksi.
4) Paketti voidaan laittaa jakoon.
5) Halukas käyttäjä lataa asennuspaketin ja asentaa sen ChaosBasic IDE:stä muutamalla klikkauksella.
6) Paketti on valmis käytettäväksi.

Pyrin tekemään DLL-tuesta niin hyvän, että toimintoja voidaan monipuolistaa hyvinkin usealla tavalla. Esimerkiksi Kaaoksen verteksi-puskuri, DX-rajapinta, tekstuuridata yms.. on mahdollista saada DLL:ien käyttöön ja täten luoda vaikka oma 3D-moottori kaaokselle. Myöskään valmiiden moottorien kuten Irrlichtin tai Ogren integroimista Kaaokseen en kävisi pois sulkemaan, mutta niitä en käy lupaamaan... 8-)
The darkest spells can be found from
http://tunkkaus.blogspot.fi

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

Re: ChaosBasic [version 0.0.2.4]

Post by SPuntte » Tue Feb 19, 2008 1:54 am

Wohou. Kuulostaa mahtavalta ja toimivalta systeemiltä, tosin valitettavasti se on vasta (ainakin osittain) suunnitelma :P Hyvä, jos jaksat sellaisen väsätä. Lupaan ainakin tutustua :D Jos homma toimii, saisit varmaan tienattuakin sillä jotain..
CoolBasic henkilökuntaa
Tech-kehittäjä
CoolBasic Classic, Cool VES

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

Henkru
Advanced Member
Posts: 359
Joined: Sun Aug 26, 2007 2:46 pm

Re: ChaosBasic [version 0.0.2.4]

Post by Henkru » Tue Feb 19, 2008 7:50 pm

Tämähän alkaa jo kuulsotaa hyvältä :D Toivottavasti ei käy niikuin CB.n

User avatar
Pie2
Member
Posts: 55
Joined: Mon Aug 27, 2007 8:14 pm
Location: Porvoo

Re: ChaosBasic [version 0.0.2.4]

Post by Pie2 » Tue Feb 19, 2008 11:55 pm

SPuntte wrote:Anteeksi OffTopic. On vaan pakko selventää vähän käsitteitä.

OFFTOPIC
Pie2 wrote:
Flip wrote:Meinasitko laittaa ChB:hen sisäänrakennetun törmäyksentunnistuksen ja siihen reagoimisen (kuten coolbasicissa)? Mun mielestä se olisi tärkeä ominaisuus.
Eikös tuo sitten jo perjaatteessa vaadi objektimoottoria, että siitä olisi mitään hyötyä? Tarpeellisia komentoja olisivat ainoastaan boxoverlap ja imagescollide.
...tekstiä...
Yritän saada sanotuksi että hyvin sitä pärjää ilman niitä objektejakin. ;]
Dibalo wrote:Nuo ovat viisaita sanoja. Pyrin tekemään niin, että käyttäjän on mahdollista luoda rajapintoja, jotka on helppo linkittää ohjelmaan vain Includettamalla rajapinnan tiedosto lähdekoodiin. Lisäksi suunnitelmissani on tarjota editori, jolla rajapinnat voidaan dokumentoida ja niistä voidaan tehdä asennuspaketteja, jotka integroituvat Kaaoksen manuaaliin (samankaltainen kuin CB SDK). Tekoprosessi on tämä:
1) Käyttäjä luo rajapinnan (funktioita, luokkia)
2) Käyttäjä luo dokumentaation ohjelmalla
3) Rajapinta ja dokumentaatio käännetään asennuspaketiksi.
4) Paketti voidaan laittaa jakoon.
5) Halukas käyttäjä lataa asennuspaketin ja asentaa sen ChaosBasic IDE:stä muutamalla klikkauksella.
6) Paketti on valmis käytettäväksi.

Pyrin tekemään DLL-tuesta niin hyvän, että toimintoja voidaan monipuolistaa hyvinkin usealla tavalla. Esimerkiksi Kaaoksen verteksi-puskuri, DX-rajapinta, tekstuuridata yms.. on mahdollista saada DLL:ien käyttöön ja täten luoda vaikka oma 3D-moottori kaaokselle. Myöskään valmiiden moottorien kuten Irrlichtin tai Ogren integroimista Kaaokseen en kävisi pois sulkemaan, mutta niitä en käy lupaamaan... 8-)
Toivottavasti homma tosiaan etenee noin pitkälle. Jään innolla odottamaan tulevaa.
Milloinkas muuten ChB sai alkunsa? Onkos tässä jo mennyt vuosi? Vai sekoitanko chaoslibiin?
Since 24-March 05

Post Reply