decentninja / Nanoacre

HTML5 Javascript multiplayer game with matchmaking

Home Page:http://nanoacre.decent.ninja

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Restricted visibility

simonlindholm opened this issue · comments

Prototypade någonting i branchen "shadows" - rätt dåligt utseende- och performance-mässigt. Jag antar att vi inte vill ha riktig fog of war utan att man ska kunna se hela kartan från början?

Det ser lite konstigt ut med så raka synlighetsområden och snabba ändringar.

Prova det gärna med flera spelare, jag har lite svårt att göra det.

ska testa att experimentera med det imorgon

Har mixtrat lite med detta och kommit fram till ett mycket snabbare sätt, som "nästan" fungerar. Ett anrop som inte borde breaka något gör att ingenting alls ritas. (ett anrop av fillRect med två stackade clippings tycks krascha canvas)

vid närmare efterforskningar tycks detta vara en bugg i firefox på linux. interesting. Om vi ska ignorera linux firefox som platform fungerar min metod bra, bara jag lyckas lösa att överlappande paths ibland tar ut varandra.

Hmm, vi droppar browsers lite för snabbt... Vi borde kunna supporta firefox och chrome på alla plattformar i alla fall.

en bugg i canvas är lite svår att gå runt. Det är en markant skillnad i performance mellan min metod och den tidigare (inte mätt, men tror åtminstone en storleksordning).

bör jag committa och pusha så att fler kan titta på det? Jag ska göra annat ett tag, så jag kan inte experimentera så mycket.

pushat som en ny branch, shadows2. Finns dels linux-buggen och dels en bugg där paths som överlappar på ett speciellt sätt tar ut varandra, åtminstone den andra tror jag är lösbar.

Fungerar inte på Firefox OS heller. ^^

Det känns inte som att vi kan merge till master med den buggen... Har du kollat om det reproducerar i minimal form, om det är rapporterat i bugzilla, och om det finns work-arounds?

Hur känns det att spela med skuggor, förresten? Och borde man verkligen ha perfekt raka linjer?

har du skype?

Sure. simon.lindholm10

vi sitter och testspelar och fixar buggar

jag har inte lyckats reproducera det någon annanstans än i nanoacre, har försökt lite grann i en jsfiddle med det fungerade som det skulle. Vet inte riktigt vad det är som breakar mer specifikt. Har inte hittat nån bug report, men vet inte om jag söker på rätt sak då jag inte vet vad som orsakar mer specifikt.

Hm, synd. Men skype?

Om jag lägger in
this.ctx.transform(1,0.001,0,1,0,0);
före raden med fillRect (d.v.s., förskjuter rektangeln nedåt med y = 0.001x) så fungerar ursprungsvyn i ?debug=1-läge; dock kommer problemet tillbaka när någon karaktär går över den högsta kanten. Den lägsta kanten går dock, så det går att gå runt till andra sidan. När man sedan går upp över högsta kanten, fast på höger sida, så segas Firefox och hela datorn ned (möjligen hänger sig, jag vet inte) (datorn dog sedan mer eller mindre av överhettning).
Om man byter 0.001 till -0.001 speglas hela problemet (och ändringar av andra parametrar har liknande effekter). Kul.

Tror vi borde ge upp på att försöka arbeta runt det här och köra på något mer liknande ursprungsidén... Ska se om jag kan skicka in en bugrapport.

Fungerar med gfx.canvas.azure.backends = skia. Så det är ett problem med cairo-backenden, som tydligen används på Firefox OS, Android, Linux, och om man saknar bra grafikkort/-drivrutiner eller kör XP även Windows.

Antar att vi stänger den här nu!