×

Laat je stem gelden!

Dit jaar organiseren we voor de elfde keer de Tweakers Awards! Wat vind jij de beste tech- en elektronicaproducten van het afgelopen jaar? Laat je stem gelden en ontvang 50 ippies. Je maakt bovendien kans op een Philips Hue Starter Pack, JBL Charge 3, Call of Duty: WWII of twee vrijkaarten voor de uitreiking op donderdag 1 februari!

Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Van de zolder naar de Valley: Isogenic Engine (video)

77 Linkedin Google+

Webgames zijn van oudsher op Adobe Flash gebaseerd, maar een aantal bedrijven probeert daar met html5-engines verandering in te brengen. Een daarvan is Isogenic uit Leeuwarden.

Voor de laatste aflevering van Van de zolder naar de Valley ging Tweakers.net op bezoek bij het bedrijf Isogenic uit Leeuwarden, dat onder diezelfde naam een 2d-gaming-engine heeft ontwikkeld. De engine is geheel in html, css en javascript geschreven: Flash-ondersteuning is dus niet nodig, waardoor de engine ook op Flashloze apparaten werkt.

Reacties (77)

Wijzig sortering
Buiten de mobiele apparaten zie ik dit ook als een zeer interessante ontwikkeling voor Linux based platforms. Flash support voor Linux is aanwezig, maar werkt matig, en bij ingewikkelde games is het zeer traag. Interessant om te zien dat HTML5 technieken gelijk worden opgepakt en ingezet voor het maken van games.
Ik denk dat jullie de juiste weg zijn ingeslagen door ook oudere browsers te ondersteunen door middel van gracefull degradation. Ga vooral zo door en laat je niet opkopen ;)
Ik ben zelf ook bezig (geweest) met vooral testen welke technieken je het best kan gebruiken voor zo een isometrische html5 engine en kwam ook uit bij het canvas element. Het ondersteunen van oudere browsers is wel leuk maar het betekent ook gewoon dat die oudere browsers een zeer trage javascript engine hebben waardoor de games al heel snel heel traag worden en zeker bij de isometrische games kan je dan maar een handjevol animaties gebruiken.

Verder vind ik dat je webgl ook wel kan uitsluiten. Microsoft heeft eerder gezegd dat het grote beveiligings problemen in webgl ziet en het voorlopig niet gaat ondersteunen. Dus ondersteuning van webgl onder IE valt sowiezo al weg (voorlopig). Als je dan toch denkt "ik maar er in ieder geval gebruik van bij browsers die het wel ondersteunen", blijft het feit dat je rekening moet houden met de zwakste schakel (net als oudere browsers ondersteunen). Je spel moet blijven werken op internet explorer en kan dus niet mooier en sneller dan de zwakste schakel aankan (tenzij je per browser als het ware grafische niveau's instelt maar dat kost waanzinnig veel tijd).

Dus ik zou zeggen stop met het ontwikkelen van de engine voor DOM en webgl want het kost waanzinnig veel energie en het levert bijna niets op.

Verder weet ik dat de isogenic engine gebruik maakt van dirty rectangles om zo veel mogelijk redraws te besparen op het canvas maar volgens mij kan dit veel efficienter. Als nu een klein poppetje beweegt moet de hele dirty rectangle opnieuw getekent worden. Normaal geen probleem maar canvas is gewoon waanzinnig traag met tekenen waardoor het wel een probleem is. Wat ik heb gedaan is met een rtree (soort binaire tree) kijken welke vierkanten op het scherm opnieuw getekent moeten worden en alleen die opnieuw tekenen. Dus als er een klein poppetje loopt wordt alleen de boundary boxes van het poppetje hertekent. Dit kost wel is waar meer reken werk maar in verhouding met de tijd die canvas nodig heeft om iets te tekenen is dit sneller tot een bepaald aantal animaties (ergens in de 300).

Verder zie ik dat tijdens het scrollen op de map, de map niet realtime ingeladen wordt. Dus je ziet de huizen die normaal buiten de viewport staan pas als je de muis weer loslaat (dan wordt de map weer geupdate) en als je wat verder buiten de map scrollt zie je zelf een heel zwart vlak ontstaan. Gaat dit nog veranderen? Volgens mij is het prima mogelijk om dit realtime in te laden.

Ik ben dus erg benieuwd naar de argumenten van de makers waarom ze hebben besloten het op deze manier te doen (oude browsers ondersteunen, webGL, DOM, dirty rectangles etc.).

[Reactie gewijzigd door esak op 22 oktober 2011 12:58]

De dom rendering gebruiken we waar nodig, isogenic ondersteund dit om clients met een kleiner scherm, en zonder canvas toch mee te kunnen laten spelen in multiplayer games, je hebt immers geen sneller cpu nodig om wat dom objecten te drawen zolang dit er maar niet te veel zijn.

Bij nieuwere clients kan het nog steeds lonen om bijvoorbeeld de achtergronden van platte levels als dom objecten te laten renderen. Op die manier is het redrawen van de canvas elementen een stuk lichter, er hoeft minder gecopy paste te worden uit de sprites.
Een game developer kan zelf kiezen wat zijn voorkeur heeft voor verschillende render layers / object types.

De dirty rectangle die je in isocity ziet is een vrij ruwe variant, een goede redrawing engine maken die snel en secuur werk is lastig, maar lijkt voor de meeste games ook nog eens niet nodig. We hebben een xor engine klaarliggen die naast pixel perfect redrawen ook nog eens pixel perfect collision detection en mouse detection doet.
De techniek hierachter willen we graag nog even voor ons zelf houden om zo een mooie kaart achter de hand te hebben in het geval van een serieuze concurent.Op den duur moet de engine zelf bepalen welke redrawing techniek er het best scoort op ieder client platform.

WebGL zetten we in om landschappen te renderen en zo het aantal sprites te verminderen, dit betekend een behoorlijke performance increase, maar kost je wel meer batterij omdat je gpu actief mee moet helpen. Daarnaast is het de vraag of we al te grote grafische verschillen tussen spelers onderling willen toestaan, of dat we vooral de zelfde style willen blijven presenteren binnen 1 game wereld.

Realtime laden van de map is in principe geen probleem, de demo map heeft alleen een enorm aantal geanimeerde sprites aan staan, en maakt het (door de multiplayer) mogelijk dat er overal changes gebeuren in de al reeds geladen kaart, en dus de path finding van de poppetjes. Om de netwerk activiteit hiervan wat te beperken hebben we besloten niet een hele grote buffer / overlap te hebben in de client. Een wat statischere kaart kan dus prima veel meer gepreload worden.
Oke, duidelijk maar er is nog één ding:

De game moet werken op de zwakste schakel. Dus zelfs als je met webgl een enorme performance boost krijgt kan je het spel niet mooier maken als een oudere browser met alleen DOM aankan omdat die het spel ook gewoon aan moet kunnen. Wat ik me nog wel voor zou kunnen stellen is dat je de cpu zo min mogelijk wilt belasten als dat mogelijk is (als kost dat misschien wel meer stroom zoals je al zei).

Dus het feit "De game moet werken op de zwakste schakel" zorgt ervoor dat webgl bijna geen extra voordelen heeft tenzij je die zwakste schakel minder grafische opties bied wat game technisch weer oneerlijk kan worden. Je zegt zelf ook twijfels te hebben bij webgl maar is het dan al die extra energie die je er in stopt waard? Of gebruiken jullie nu een aparte renderer zoals three.js die automatisch kan renderen in svg, canvas en webgl?

Verder ben ik erg benieuwd naar "Benchmarks" van de engine op mobile devices. Hebben jullie al getest op bijvoorbeeld de iPad en iPhone. Heeft het daar betere prestaties (lagere resolutie) of juist slechtere (minder krachtigere hardware)?

[Reactie gewijzigd door esak op 22 oktober 2011 22:58]

Op de iPad 1 draait isocity zonder problemen fullscreen op ~25 fps, genoeg voor allerlei games, zeker als je aanneemt dat er in isocity nogal wat animaties actief zijn.

Een ipad is opzich snel genoeg voor een leuke game experience, maar een snelle nieuwe android telefoon kan een stuk hogere framerate aan door de kleinere resolutie en de nieuwere cpu.

Een desktop met een 2560x1600 scherm heeft natuurlijk baat bij een nog snellere cpu, en daar is een gpu natuurlijk een welkome extra om de framerate ook op die enorme resoluties hoog genoeg te houden.

Het zwakste schakel argument speelt niet alleen met betrekking tot de framerate en het al da niet weglaten van details, maar ook met betrekking tot de resolutie van de client, als je in een rts meer kunt zien geeft dat een edge over mensen die minder kunnen zien. momenteel denken we dat we de keuze hiervoor bij de developer van de games moeten leggen en aan onze kant moeten focussen op waar wij het verschil kunnen maken: de engine voor iedereen beter en sneller maken.
Verder vind ik dat je webgl ook wel kan uitsluiten. Microsoft heeft eerder gezegd dat het grote beveiligings problemen in webgl ziet en het voorlopig niet gaat ondersteunen. Dus ondersteuning van webgl onder IE valt sowiezo al weg (voorlopig). Als je dan toch denkt "ik maar er in ieder geval gebruik van bij browsers die het wel ondersteunen", blijft het feit dat je rekening moet houden met de zwakste schakel (net als oudere browsers ondersteunen). Je spel moet blijven werken op internet explorer en kan dus niet mooier en sneller dan de zwakste schakel aankan (tenzij je per browser als het ware grafische niveau's instelt maar dat kost waanzinnig veel tijd).
Moet je ook kijken wie het zegt.. :P MS zegt dat waarschijnlijk ook uit eem marketing oogpunt: Er gaan al tijden geruchten rond dat ze een eigen (gesloten) 3D webstandaard aan het maken zijn (iets in de zin van, Web DirectX of zo). Ik hoop echt dat WebGL de grootste standaard blijft zodat open oplossingen behouden blijven, en we niet weer gelockt zijn aan 1 browser (IE dus) wanneer MS met zijn eigen gesloten standaard komt.
Als je ook op MSDN kijkt, zie je OpenGL staan als "Legacy graphics program, should not be used for new applications". Terwijl OpenGL juist grote voordelen heeft ten opzichte van DirectX.
Bijvoorbeeld: 1 miljoen polygonen? DirectX crasht, OpenGL lagt niet eens. 16 miljoen polygonen? Extreme lag, maar nog steeds geen crash bij OpenGL.
DirectX crasht
Omdat je zelf wat verkeerd doet. D3D heeft echt geen probleem met miljoenen polygonen. Misschien moet je je FUD elders gaan verspreiden, want kwa mogelijkheden doen de API's echt niet voor elkaar onder.

[Reactie gewijzigd door .oisyn op 24 oktober 2011 11:41]

Ik vind het toch weer raar dat dingen als "Beta" verkocht worden. Minecraft maakte het zelfs nog een stukje gekker en verkocht het ook als "Alpha".

Ligt het nou aan mij of snappen deze bedrijven het concept van Alpha en Beta releases niet helemaal :?
We releasen de huidige versies onder een beta license omdat de demo's die we tot nu toe gegeven hebben al heel veel reacties los roepen bij game developers. Omdat deze reacties erg nuttig zijn voor het verder ontwikkelen, en het uitbouwen van de verschillende features hebben we besloten geintresseerde developers een optie te geven om alvast een license te kopen.

Deze license loopt dan tot de 1.0 release, die ze er dan ook bij krijgen. voordeel voor hen is dat ze mee kunnen sturen, alvast kunnen beginnen en een korting krijgen. Voordeel voor ons is dat we input krijgen, alvast wat kosten kunnen dekken en een groepje early adopters hebben die straks samen met ons een tof product kunnen lanceren.
Kleine nuancering: Sommige games die als beta (of zelfs alfa) zijn verkocht waren verder af dan sommige games die geen beta meer waren (of althans, die de ontwikkelaar niet meer zo noemde en waarbij de klachtenforums vollopen vanwege bugs). Als het gewoon een stabiele en leuke release is, waarom niet?
Ik zeg ook helemaal niet dat het half afgemaakte games zijn. Ik bedoelde dat tegenwoordig veel ontwikkelaars ervoor kiezen een BETA-stempel op hun software/game te zetten en het als volwaardig product te verkopen.

Ik vind dat als je een product als Beta aanbied, je er geen geld voor mag vragen. In de regel is het ook zo dat een Beta versie nog niet stabiel genoeg is om in productie genomen te worden. Terwijl dit dus eigenlijk al wel gebeurd.
Ik vind dat als je een product als Beta aanbied, je er geen geld voor mag vragen. In de regel is het ook zo dat een Beta versie nog niet stabiel genoeg is om in productie genomen te worden. Terwijl dit dus eigenlijk al wel gebeurd.
Dat gaat dan ook gewoon niet meer op. De praktijk is de taal een beetje aan het inhalen. Kunnen we wel angstvallig aan de ouderwetse definitie vasthouden maar daar schieten we verder ook weinig mee op hoor.
Het betekent simpelweg dat er geld kan worden verdient tijdens de ontwikkeling, waardoor de ontwikkeling langer kan duren (aangezien er inkomsten zijn) en er niet gerushed hoeft te worden.
Mwoah, het begint er nu op te lijken dat men eigenlijk helemaal nog niet met een echte release bezig is, maar gewoon alvast begint met uitgeven om geld binnen te halen. Er zit nu gigantisch veel tijd tussen de eerste uitgave en wanneer de echte eerste final wordt opgeleverd, dat het niet meer onder die noemer geschaart kan worden.
Jammer dat niet duidelijk is of ook ander soort isometrische games zoals rts, moba of hack ´n slash rpg´s mogelijk zijn.

Wel gaaf als OpenTTD er naar zou kunnen worden geport.

[Reactie gewijzigd door Baardmeester op 22 oktober 2011 17:37]

Je kunt in de engine zeker ook een d&d achtige game, of iets van diablo maken.

Als je daarbij webGL of losse canvas layers voor de lighting gebruikt kom je heel aardig in de buurt van wat je zou willen voor zo'n game.

Snellere machines kun je meer details en effecten laten renderen, en tragere machines juist minder.

De truck zit hem in t aantal redraws, of het te redrawen gedeelte van het scherm minimaliseren. iets dat hij de iso engines nogal uit de hand kan lopen omdat er *overal* animaties zijn.
Ohh... Remakes van Champions of Krynn!

Ik heb gister even vluchtig gekeken op de website en het ziet er allemaal heel mooi uit, maar hebben jullie al wat gemaakt/ontwikkeld op basis van turn based multiplayer? Ik zie verder dat jullie momenteel tiles maken op basis van vierkanten, toevallig ook bezig met zeshoekige tiles (aka. hexes)?

Ik heb een hoop leuke ideeën, maar niet zelf de tijd of het geld om iemand anders het van scratch af te laten programmeren. Gaan jullie bv. packages aanbieden RPG, RTS, turnbased, etc. die klanten kunnen aanschaffen en daarop verder kunnen bouwen, met eventuele optionele plugins? Ik kan me zo voorstellen dat er meer klanten zijn die niet van scratch willen beginnen...

Zijn jullie nog van plan om een community forum te starten waar we elkaar verder kunnen helpen?
Ik zou zeggen command & conquer + mass multiplayer...

zou het voor mij doen...
Waarom registreren onder een limited en niet inschrijven in Nederland?

Edit: Ik zie dat de makers geïnspireerd zijn door o.a. Rollercoaster Tycoon. Leuk :)

[Reactie gewijzigd door Joep op 22 oktober 2011 10:44]

Het bedrijf is opgericht in Engeland, en de nederlandse developpers (waar onder Ik), zijn later gejoind met onze eigen code, inbreng en projecten om tot de huidige engine te komen.

Rollercoaster tycoon hoort imho voor iedereen een inspiratiebron te zijn, net als de verschillende bullfrog games.
Goedkoper dan een BV en makkelijker te krijgen (tenminste dat was zo in het verleden). Ook is het internationaal gezien een bekende term. En uiteindelijk valt het allemaal onder de EU dus maakt het weinig meer uit...
Jah, met een beetje geluk kunnen ze RC online ontwikkelen!
offtopic:
Wat ik niet snap is waarom programmeurs zichzelf het soms aandoen om te werken op een laptop. Kijk naar dat eerste shot met 2 programmeurs en 2 laptops, wie schreeuwt er niet RSI :)

[Reactie gewijzigd door roy-t op 22 oktober 2011 11:31]

En ze zitten door die lage schermpjes ook zo krom in hun bureaustoel. Lijkt me inderdaad niks.

In het artikel staat trouwens dat het bedrijf zelf Isogenic heet, maar ik zie op de website weer staan "by Irellon Software". Hoe heet het nou? :-P

[Reactie gewijzigd door MsG op 22 oktober 2011 11:48]

Het lijkt op de filmpjes "erger" dan het is, de tafels zijn gewoon van normale buro hoogte, (het zijn gelukkig geen bouw schragen).

De schermen upgraden zit er wel aan te komen, maar prio's liggen momenteel ergens anders, (bij de servers bijvoorbeeld)..

Het echte programmeerwerk gebeurt gelukkig niet door uren achter elkaar aan het buro te staren naar een laptop scherm.
Inderdaad ik snap het ook niet. Wat kost het nu om één of twee beeldschermen, een toetsenbord en eventueel een dockingstation aan te schaffen.
Om jullie even een voorproefje te geven:

http://www.isocity.co.uk

Uiteraard is deze gericht op game developers, vandaar dat hij ook in beta uitgegeven wordt, dan hebben we nog input van de devvers om het product bij te sturen.
Lijkt onder Win7 64bit + Chrome niet te werken... ik kan nergens inloggen met facebook?

[edit: werkte dus niet omwille van de ghostery plugin]

[Reactie gewijzigd door StGermain op 23 oktober 2011 23:05]

We gaan het uitzoeken, we werken zelf op mac/linux maar het zou op win7 gewoon moeten werken inderdaad.
Ligt aan jou configuratie, ik krijg gewoon een popup voor facebook. Zowel in Chrome als in Firefox (beide op Win7 64bit).
Waar hebben jullie de plaatjes in die game laten maken? Dat is toch ook nog best een force investering.
De afbeeldingen hebben we laten maken voor een aantal artiesten die we weer via via (oa forums en deviantart) gevonden hebben, door niet direct in zee te gaan met buro's die er goed aan moeten verdienen maar juist onafhankelijke (misschien wel hobby) designers te benaderen hebben we de kosten laag kunnen houden en toch een aantal leuke styles kunnen uitwerken.
"Login With Facebook to Start Playing!" :'(
Ik heb zelf ook geen facebook account, dus trust me: OpenID zit het heel erg snel aan te komen, dan is een google, yahoo, twitter of een ander openID account voldoende.
ja dat vind ik ook een ergerlijk punt, weer een fkn facebook ding * King4589 haat facebook
Heerlijke RSI werkplekken hebben ze daar
Ja snap ik dus ook niet. Een toetsenbord van een tientje scheelt toch echt een hoop. Monitor van 180 euro maakt je ook enorm veel productiever.
Kleinschalig opstart met beperkt budget, kan je niet meteen een Arend ergo stoel van 1000 euro kopen. Kwestie van prio. Tuurlijk had ik ook wel iets van een paar schagen en een plank als buro, maar okay misschien voor nu genowg.

Ik vind het al heel wat dat ze het gewoon aandurven en gewoon doen. Zynga had ze idd makkelijk kunnen "opkopen" maar dan verdwijnen ze in de grijze massa. Alle echte lefkikkers zijn zo klein begonnen met bijna niks en ik wens ze veel succes, vooral in deze tijd.
Lekkere vergelijking als je meteen een Arend ergo stoel neem van ¤1000 of nog beter een controller stoel van ¤2000+. Een goede werk stoel/bureau is extreem belangrijk, je bent productiever, je bent langer productiever en je heb minder snel last van klachten, waardoor het ziekte uitval veel minder wordt. Zelfs een kleinschalige opstart zou hier niet in moeten korten, want hoeveel kost een medewerker het bedrijf als deze een week ziek is? Een goede stoel hoeft geen ¤1000 te kosten, ik heb er zelf eentje nieuwe gekocht voor ¤350 (ex. btw.?), leer en alles instelbaar. Arbo goedgekeurd. En is natuurlijk aftrekbaar, maar dat schiet natuurlijk niet op als je geen inkomsten heb...
Of je loopt naar een willekeurige opkoper en haalt voor 70 euro per stuk een stel bureaustoelen. Zelf net een Girsberger Pronto gekocht voor 50 euro, niks kapot, alles werkt. En inderdaad, ontwikkelen op een laptopscherm, slechte stoel en zonder apart toetsenbord wordt je ook niet vrolijker van.
Je ziet dat die mensen gemotiveerd zijn. Wat maakt een stoel van 2000 euro dan uit? Als die ziek zijn gaan die wel van thuisuit ook werken, 't is niet dat het een saaie job is dat je liever ziek bent dan gezond, en dan het excuus op de goeie stoel steekt.
Akkoord, als ze 3-4 jaar bezig zijn en uit beginnen groeien, dat ze dan investeren in beter materiaal. Als jij een bedrijfje opricht, ga je dan ook eerst je stoelen kopen en dan je businessplan uitdenken?
Ga eens bij de gemiddelde fysio kijken en kom dan eens weer. Een slechte stoel is geen excuus om je ziek te kunnen melden, een slechte stoel is een gezondheidsrisico. Motivatie is fijn en goed, maar dat wil niet zeggen dat gezondheid opeens niet meer belangrijk is.
Hoe kunnen ze concurreren met Scirra Construct?
Hierbij heeft de maker veel minder technische kennis nodig om een spel te maken.
Over het algemeen is het zo dat hoe meer een "environment" / tool voor je doet, hoe minder je zelf in de details in kunt grijpen. Als je even naar de demo's daar kijkt zie je vooral 'platte' 2D games, ik geloof bijvoorbeeld niet dat je met tool een isometrische game kunt maken, laat staan een Sim City kloon.
Wat had je gedacht van bv. multiplayer? Wellicht performance. Isogenic lijkt meer gericht op 'developers' die er geld mee kunnen verdienen en Construct 2 meer op 'gebruikers' die ermee willen spelen.
Vind het wel jammer dat eigenlijk alle bedrijfjes die hier aandacht krijgen allemaal alleen eigenlijk webgerelateerde dingen doen. Zou het ook leuk vinden als een ander klein software bedrijf wat zich B.V. meer richt op de industrie dan op de consument aandacht zou krijgen.
Ik denk dat tegenwoordig een groot deel van de tweakers.net doelgroep dat boven de pet gaat, webbased hebben we allemaal mee te maken.
Het is als "wedeveloper" veel makkelijker om op de zolder te beginnen dan iets specifieks voor een bepaalde industrie te maken. Er zijn gewoon "meer zolders" welke met webdevelopment begonnen zijn dan andere takken van de IT.
Als ze het ontwikkelen van deze games vol willen houden, wil ik ze adviseren hun werkplekken sterk te verbeteren. Want op zoń slechte bureaustoel, achter een te lage tafel, typend op een laptop met als hoofdscherm het laptopscherm houdt niemand dit lang vol. Verder een vrij interessant fimpje, maar niet voor Tweakers. Het zit vol met Jip en Janneke taal wat het feitelijk weer onjuist maakt. Want javascript is niet veel sneller geworden, maar de renderengines zijn (mede door de nog steeds gevoerde browseroorlog) veel sneller geworden. Om maar een voorbeeld te noemen.
Javascript zelf is ook "sneller" geworden. Immers is de Nitro engine uit Safari of de V8 engine uit Chrome duidelijk sneller in javascript dan "voorgangers" dit o.a. door het just in time compilen van de javascript code.

Op dit item kan niet meer gereageerd worden.


Apple iPhone X Google Pixel 2 XL LG W7 Samsung Galaxy S9 Google Pixel 2 Far Cry 5 Microsoft Xbox One X Apple iPhone 8

© 1998 - 2017 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Hardware.Info de Persgroep Online Services B.V. Hosting door True

*