2011-12-27
Mikrokontrolerių programavimas
žymės:
atmega,
atmel,
avr studio,
electronics,
elektronika,
hardware,
microcontroller
2011-11-14
Garso lygio indikatorius/ VU meter
Kai nusibosta kiekvienos dienos monotonija ir yra šiek tiek laiko, reiškia metas
paeksperimentuoti. Šįkart nutariau pagilinti elektronikos žinias ir
sukonstruoti ką nors veikiančio, be to reikia papildyti hardware skiltį,
kadangi ji vis dar tuščia. Idėjų visada yra, tačiau kažką daryti nuo 0 iki
galutinio daikto elektronikos mėgėjui yra ypač sudėtinga, geriau remtis pavyzdžiais.
Laimei yra tokios svetainės kaip elektronika.lt, kurios rašo ne tik naujausią
informaciją apie IT įvykius, bet svarbiausia - apie elektroniką. Schemų
skiltyje kiekvienas ras sau įdomių dalykų paeksperimentavimui. Aš taip pat išsirinkau
ir nusprendžiau pasigaminti paprastą garso lygio indikatorių - VU meter. Kaip man sekėsi
ir kas iš to gavosi – viskas aprašyta toliau.
žymės:
elektronika,
garso lygio matuoklis,
hardware,
litavimas,
pcb,
sound,
vu meter
2011-10-23
Web programavimo technologijos
Web jau daugeliui nebe
naujiena ir kiekvienas daug maž bent kažką yra girdėjęs apie stebuklingą žodį
“internetas” arba tokių, kurie dar nieko apie tai negirdėjo – darosi
mažuma(pvz. gentys Afrikoje). Interneto svetainės, portalai, blogai,
soc.tinklai etc. kasdien pateikia daugybę informacijos, dar daugiau šiukšlių.
Technologijų leidžiančių internete „suktis“ informaciniams ir kitokiems Web
puslapiams yra daugybė. Nusprendžiau, jog laikas pakalbėti ir padaryti trumpą
intro apie plačiausiai paplitusias, geriausiai žinomas priemones Web puslapiams
kurti. Niekam ne paslaptis, jog dinaminis šiandienos puslapių turinys kaip tik
ir generuojamas šiomis priemonėmis. Manau, kiekvienam, kartais besidominčiam Web
programavimu (ypač dirbantiems toje srityje), būtų puiku išmanyti ar bent
pačiupinėti daugelį šių technologijų, praplėsti akiratį ir pažiūrėti į tą patį
dalyką iš skirtingos perspektyvos. Trumpai susipažinsime su alternatyviomis
PHP, ASP .NET, Java JSP, Python technologijomis Web puslapių programavimui. Toliau
tikiuosi, jog šio straipsnelio skaitytojas yra susipažinęs bent su HTML ir
puslapių kūrimu. Jei ne, nebėda – pagrindų visada galima išmokti
www.w3schools.com.
2011-09-10
Spyruoklių ir virvių fizika(spring/rope-physics)
žymės:
coding,
physics,
processing,
rigid-body,
rope,
spring
2011-08-14
Kieto kūno(rigid-body) fizikos pagrindai
Didžioji dalis šiandienos žaidimų ir įvairių simuliatorių neapsieina be fizikos „efektų“. Kai dar 1998m. pasirodė Half-life pirmoji dalis, Quake 3 ir kiti gerai žinomi kultiniai žaidimai apie pilnavertę fizikos simuliaciją galima buvo tik pasvajoti. Tuomet fizikos skaičiavimai buvo naudojami tik būtiniausiose žaidimų vietose – žaidėjų-scenos kolizijų aptikimui-atsakui(collision detection & response), protagonistų judėjimui ir dalelių sistemų simuliacijai(particle physics). Procesorių CPU ir GPU pajėgumams padidėjus su trenksmu ir tam tikra egzotika tokie kūrėjai kaip Havok, Ageia Novodex(dabartinė Nvidia PhysX) pradėjo plėtoti pilnavertes simuliacijos sistemas ir siūlyti savo programinės įrangos plėtotės įrankius(software development kit – SDK) fizikinių sistemų integracijai į kitas programas. Viena iš pirmųjų Havok fizikos sistema sėkmingai buvo panaudota Valve žaidime „Half-life 2” ir padėjo žaidimui pasiekti aukštumas. Iš mėgėjams skirtų priemonių gerai buvo žinoma Tokamak, ODE bei Newton projektai – vis dar naudojami šiandien ir populiarūs. Taip pat atsirado atviro kodo galingų sistemų tokių kaip: Bullet Physics, kuri naudojama žaidimų, filmų pramonėje(pvz. kuriant filmą „2012”), Blender bei kituose modeliavimo ir komerciniuose paketuose kaip Softimage XSI, Cinema 4D. Dviejų dimensijų analogas - Box2D ir kt.
žymės:
coding,
collision,
linear motion,
physics,
rigid-body
2011-06-08
Ogre Flow - Particle Editor
Ogre Flow - tai mano parašytas mažas įrankis darbui palengvinti su Ogre 3D varikliuko dalelių sistemomis(particle systems). Nors Ogre variklis yra kuriamas pakankamai ilgai ir turi gausybę įskiepių ir kt., bet minimalių įrankių koreguoti dalelių skriptams(ir realiu laiku matyti rezultatus) pasigedau. Nežiūrint į tai, kad egzistuoja smarkiai išplėtotas komercinis Particle Universe redaktorius, nusprendžiau pasirašyti savo poreikius atitinkantį minimalų dalelių redaktorių Flow.
- Daugiau apie galimybes ir pačią programą rasite čia - Flow.
Kol kas šis redaktorius yra pradinėje stadijoje, bet jau gali redaguoti praktiškai visus Ogre sistemų parametrus - to manau pilnai pakanka nesudėtingiems efektams sukurti. Priklausomai nuo naudojimo poreikių redaktorius bus plėtojamas toliau.
2011-05-28
Python pagrindai per 15 min.
Išmokti Python programavimo kalbą ir jos svarbiausias konstrukcijas - galima labai greitai. Kalba gan paprasta, patraukli savo lankstumu, įgudę programuojai perpras be vargo, o pradedančiajam - gera alternatyva arba papildas programuoti šalia kokio Pascal ;) Šiame įrašė pateiksiu greitą pradžiamokslį šiai kalbai.
Taigi parsisiunčiam ir įsirašom Python iš http://www.python.org/download/ (siulyčiau kol kas 2.7.x versiją, nes ji geriausiai dabar palaikoma ir pereiti prie 3.x nebus didelių problemų, jei ryžtumetės vėliau). Tad nieko nelaukdami - važiuojam!
žymės:
15 min,
basics,
coding,
getting started,
python
2011-05-10
Labirintų generavimas
Vienas gan įdomus uždavinys yra labirintų sprendimas – pradedant įėjimu pasiekti labirinto pabaigą. Kompiuteriai tai atlieka itin greitai, žmogui tektų kaip reikiant paprakaituoti, jei duotume sudėtingesnį atvejį. Labirintų sprendimui naudojamas paieškos į gylį metodas – breadth first search arba tiesiog BFS. Jei teko bent kiek domėtis, tai šis metodas veikia labai paprastai ir primena Flood fill metodą (tą patį kurį naudoja Photoshop, MS Paint, Gimp etc.) figūrų užpildymui tik šiek tiek modifikuotą.
Kitas uždavinys – labirintus ne spręsti, bet juos generuoti! Taip! Pasirodo, kad generuoti labirintą nėra taip paprasta, kaip gali pasirodyti. Šiame straipsniuke pabandysiu apžvelgti pamąstymus, kaip tai būtų galima atlikti ir galiausiai užbaigsime su realizacija. Jokiu būdu nesistengsiu sugalvoti kažko optimalaus ir minimalaus, o tiesiog parodyti, kad generavimo idėja irgi gali būti įdomi ir įtraukianti.
2011-04-06
Processing
Kartais reikia labai greitai sukurti/išbandyti kokį algoritmą ar pateikti informaciją vaizdžiai ir aiškiai, todėl tenka ieškoti to, kas galėtų tokį darbą palengvinti. Naudoti įprastas programavimo kalbas ir jų galimybes galima, tačiau užtruksite gerokai ilgiau kol gausite reikiamus rezultatus. Išeitis kaip visada yra! Vienas iš tokių „darbo palengvintojų“ tai Processing IDE sistema.
Processing - tai Java kalba paremtas ypač greitos vizualizacijos(pabrėžiu: greitos!) įrankis, kuriuo labai paprasta naudotis. Jis skirtas duomenų atvaizdavimui ir pateikimui tiek 2D tiek ir 3D. Daugelis labiausiai reikalingų ir dažniausiai naudojamų funkcijų jau realizuota, kas iš ties paspartina procesą.
žymės:
coding,
examples,
grafika,
processing,
review
Užsisakykite:
Pranešimai (Atom)