Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
Hrátky se systémem LÖVE

racik
racik (neregistrovaný) 194.154.225.---
2. 6. 2009 11:26 Nový

Vďaka

celé vlákno

Veľmi pekne ďakujem za článok. Chcel by som sa opýtať, či bude v tomto seriáli aj ukážka nejakej jednoduchej hry. Hľadal som v dokumentacii LOVE, akým spôsobom je najlepšie urobit kostru hry (kde a ako vykreslovať, kde umiestnit logiku hry atď…), ale zatiaľ som nenašiel úplne uspokojivý popis.

fj
fj (neregistrovaný) 89.185.238.---
2. 6. 2009 21:07 Nový

Re: Vďaka

celé vlákno

Hustej článek. V tom by se daly lehce psát retro hry. Předělávky starých amiga her nejlépe :-). Kdo se do toho pustí jako první? :-) Chcu hry.

Green_Hell
Green_Hell (neregistrovaný) ---.karneval.cz
3. 6. 2009 9:34 Nový

Re: Re: Vďaka

celé vlákno

No amiga to není… ale je to zábava :) http://love2d.org/…iewtopic.php?…

Pavel Tišnovský aura:98
3. 6. 2009 11:00 Nový

Re: Vďaka

celé vlákno

Ano, neco maleho chystam. Nebude to zadny Quake nebo WoW :-), ale neco na zpusob Pongu, Berzerku, Asteroids, popr. nejaka plosinovka to se da napsat doslova na par radku. Kdyby byly nejake napady, o co by se melo jednat (zanr), tak muzu pres vikend neco udelat :-)

amigist
amigist (neregistrovaný) 89.185.238.---
3. 6. 2009 22:18 Nový

Re: Re: Vďaka

celé vlákno

Prosím o předělávku hry Superfrog. Raději nějakou plošinovku než pomiliontisící udělanej arkanoid či pong. A nebo prosím rád bych engine pro tvorbu adventur.

Pavel Tišnovský aura:98
3. 6. 2009 23:45 Nový

Re: Re: Re: Vďaka

celé vlákno

A co takhle klon Gravity Force? Ok, plošinovku vyzkouším, ake sprity asi nebudou nic moc. Popravdě poslední hru tohoto typu jsem hrál ještě na Atárku – Montezuma.

Loony
Loony (neregistrovaný) 85.93.98.---
4. 6. 2009 9:53 Nový

Re: Re: Vďaka

celé vlákno

Mohl byste zde pritomnym ukazat jak si udelat jednoduchy tetrinet co frcel pred patnacti roky :)

Loony
Loony (neregistrovaný) 85.93.98.---
4. 6. 2009 10:04 Nový

Re: Vďaka

celé vlákno

Asi takhle … kostra jsou fce load, update, draw. Kdyz treba budete chtit udelat nejake oldskool demo s copperbary, tak v load si definujete tridu bar (nebo milion promennych s cislem pro kazdy bar zvlast). V update budete s bary soupat nahoru a dolu podle toho kde se odrazily a v draw je budete kreslit na pozici vypocitane v update. Samozrejme neni rozumne kreslit 5 baru s triceti radky protoze to by love moc nezvladl, ale v love existuje moznost dynamicky si obarvovat a scalovat obrazek tzn. udelate si cernobily vystinovany obrazek o rozmerech napriklad 1×20 pixelu, vystinujete ho od nejtmavsiho do nejsvetlejsiho a zpet do nejtmavsiho. V love pak obrazek obarvite pres setColor (musite predtim pouzit metodu setColorMode – love.graphics­.setColorMode(lo­ve.color_modu­late);) a obrazek vykreslite pres draw s pozici x uprostred obrazovky a parametr sx date jako sirku okna. Mate oldskool demo a muzete zkouset dalsi kravovinky … V love toho jde udelat spousta uz proto, ze ma podporu fyziky, particlu, animaci atd

Petr Sládek aura:58
3. 6. 2009 8:45 Nový

Java LÖVE

celé vlákno

Zdravím všechny! Myšlenka LÖVE se mi moc líbí, ale jazyk Lua už moc ne. Vím že je to troufalé tvrzení, napsat takový příspěvek do seriálu o jazyku Lua, ale nemyslím to jako flame.


Poslední dobou nejvíc používám Javu, takže mě přirozeně napadlo do Javy přenést rozhraní LÖVE. Hry by se psaly úplně stejným způsobem, jen jazyk by se změnil z Lua na Javu. Chci to zkusit, protože psát hry v Javě jen s AWT je docela peklo.


Nechal jsem si na prozkoumání konceptu chvilku času, pro přístup k nativním systémovým knihovnám jsem použil Java Native Access, inicializoval jsem SDL a do okna jsem vykreslil pár čárek. Jako funkční prototyp ve verzi „0.1 alfa“ mi to zatím stačí, ale rozšiřování rozhraní zabere ještě dost času. :-)


Líbí se mi původní název i celé názvosloví, které jsem si vytvořil: namísto „game-engine“ jsem třídu pojmenoval „Java Love Machine“, pro přístup k nízkoúrovňovým službám mám balík „penetration“. :-D


Technicky jde o normální .jar s přeloženou třídou Java, která používá herní engine. Celý systém balení resource obrázků do zipu zůstává stejný, jen příponu archivu jsem změnil z .love na .JavaLove, aby se to nepletlo s původním systémem LÖVE.


Chtěl jsem si zaregistrovat doménu, ale zjistil jsem, že lovejava.org i javalove.org už nejsou volné, což mě dost mrzí, ale na druhou stranu se není čemu divit. Nemáte někdo nápad na jiný název domény, který by byl stejně chytlavý a zněl by stejně pěkně?


Budu vděčný za vaše nápady a připomínky! :-)

Pavel Tišnovský aura:98
3. 6. 2009 12:00 Nový

Re: Java LÖVE

celé vlákno

Pokud se Ti podaří udělat správně event loop tak, aby byl jednoduchý podobně jako v LÖVE, tak by to mohlo vypadat hezky, hlavne by tam byla automaticky podpora vsech trid z JDK a hafo dalsich balicku. Mozna by tu knihovnu chtelo udelat jeste na ponekud vyssi urovni, napriklad graficke objekty by byly skutecne reprezentovany objekty ulozenymi ve stromu cele zpracovavane sceny.

<noflame>To spojeni Lua+LÖVE je docela dobre, ostatne si myslim, ze nakonec taky skoncis s tim, ze si pridas podporu pro Groovy nebo Jython :-), protoze spoustu jednodussich her postaci naskriptovat v nejakem vysokourovnovem jazyce a teprve pro opravdu vypocetne narocne veci se sahne po C/C++/Jave. Lua+LÖVE je taky v podstate strasne jednoducha vec, treba uz jen instalace, takze napriklad pro vyuku je to takrka idealni prostredi pro ty, kteri se uz nechteji zabyvat Baltikem ci Logem.</noflame>

Pavel Tišnovský aura:98
3. 6. 2009 12:05 Nový

Re: Java LÖVE

celé vlákno

Ještě mě napadlo – potřebuješ vůbec SDL, když ted máme akcelerovanou Java2D? Bez toho SDL by to přecejen bylo (výsledná hra) snáze instalovatelné atd. Podpora pro fonty i rastrové obrázky v Java2D je, základní objekty taky. (přiznám se, benchmarky pro porovnání nemám, ale když se volá ten stejný driver, tak by to mohlo být +- stejně rychlé). Pro opravdu low-level přístupu k video RAM by se taky dalo použít VolatileImage, to je vlastně obdoba původního DirectDraw :-)

Petr Sládek aura:58
3. 6. 2009 14:13 Nový

Re: Re: Java LÖVE

celé vlákno

Díky za příspěvek! :-) V použití knihovny SDL namísto grafiky v Javě asi moc nezískám, větší benefit bude v ostatních modulech, třeba ovládání joystickem nebo fyzikální engine.


Ale abych vysvětlil své plány, nejde mi o zvýšení výkonu grafiky v Javě, jde mi především o kvalitní rozhraní. Je možné, že Java2D je ve výsledku stejně rychlá jako SDL s OpenGL, ale o to mi ani tolik nejde. Jde o to, že např. rotovat obrázek je s API Javy je mnohem složitější než pouhé:


        love.graphics­.draw(image, x, y, angle)


A když už budu kopírovat rozhraní, které má LÖVE, můžu přitom využít i technologii, která stojí za tím, tedy SDL.

Pavel Tišnovský aura:98
3. 6. 2009 21:48 Nový

Re: Re: Re: Java LÖVE

celé vlákno

Aha, promiň, já to na začátku špatně pochopil. Myslel jsem, že se chceš celým systémem LOVE pouze inspirovat a udělat si všechno sám.

Pokud to má být vrstva mezi vlastním „céčkovým“ LOVE a Javou, tak je opravdu nejjednodušší použít prakticky všechny věci tak jak jsou a udělat k nim přes Java native interface rozumné API (bude to i výhodné, protože jakékoli další rozšíření LOVE se již zapracuje poměrně snadno).

Asi jediný problém bude v časovačích a callback funkcích, ale mohlo by to celé ve výsledku být velmi zajímavé, protože mám dojem, že nějaký podobný snadno použitelný a ucelený systém pro Javovskou platformu chybí.

Přeji hodně štěstí, jestli něco budeš potřebovat (Lua, Java), klidně se ozvi na e-mail, ten se někde na Rootu dá najít :-)

D.A. Tiger aura:62
8. 1. 2011 14:33 Nový

Re: Java LÖVE

celé vlákno

Ahoj. Pracuješ na tom ještě? Sice mě osobně Lua vyhovuje, ale nepřipadá mi jako špatný nápad portovat Love do jiných jazyků - alespoň bude více lidí, kteří se budou moci zapojit :)

Já osobně si pohrávám s myšlenkou na něco podobného jako je Love, ale nechci to dělat jako samostatný engine, nýbrž jako wydget do FoxToolkitu (C++).

Koncept by tedy byl defakto stejný. Existovalo by několik základních událostí, které by se doprogramovaly v Lua jazyce, k tomu několik předdefinovaných objektů a metod (sprite a grafické objekty, správce objektů, funkce kolizních systému, možnost výběru mezi OpenGl a software renderigem, graphics context - to Love zrovna zatím nemá, Lua knihovnu sablonových objektů pro různé typy her, ...) a zároveń by tento widget mohl komunikovat se zbytkem aplikace psané v C++ (takže by bylo k dispozici např. pohodlné GUI, atd...).

Jak píšu je to jen nápad, bohužel zatím nerealizovaný, protože v tuto chvíly mám rozpracovány jiné projekty a potřebuji je dokončit, ale jakmile se najde trocha času a chuti určitě se do toho pustím :)

Zasílat nově přidané příspěvky e-mailem