Skocz do zawartości

Witaj na forum webmasterów Webax.pl.

Wyświetl nową zawartość

HTML5. Tworzenie gier - Jacob Seidelin

HTML5 gry przeglądarkowe JS

  • Zaloguj się, aby dodać odpowiedź
9 odpowiedzi w tym temacie
Comandeer
Comandeer

    Stały bywalec

  • Developer
  • 418 postów
#1

Napisano 19 lipiec 2013 - 21:34

Suche Fakty

Tytuł: HTML5. Tworzenie gier
Autor: Jacob Seidelin
Wydanie: I
Wydawnictwo Helion
Książka na helion.pl: Klik
Spis treści: Klik
Przykładowy rozdział: Klik

Posted Image

Kilka słów wstępu

JS od dość dawna jest moim ulubionym językiem Sieci. Dlatego też z zaciekawieniem sięgnąłem po pozycję dotyczącą tworzenia gier w tym języku przy wykorzystaniu najnowszych API, wprowadzonych wraz z nową wersją języka HTML.

O książce

Całą książkę podzielono na 5 części. Pierwsza część poświęcona jest ogólnemu rysowi na temat języka HTML5 i tworzeniu podstawowego szablonu gry. Druga część powinna już natomiast zainteresować każdego programistę JS, gdyż opisuje dokładnie sposób implementacji całej mechaniki gry w JS. Trzecia część to upiększanie gry - dodawanie dźwięku oraz przygotowanie grafiki 3D. Natomiast 4. część to krótki opis możliwości WebSockets i mechanizmu Storage w przeglądarce. 5. część to encyklopedyczny spis funkcji canvas i WebGL. Osobiście dla mnie część ta jest niepotrzebna - takie same informacje (podane w przystępniejszej formie) znaleźć można w Internecie.
Podczas czytania najbardziej przeszkadzało mi... zbyt polskie tłumaczenie. Frazy typu "pracownik sieciowy" zamiast "web worker" czy też "wypełnienie" zamiast "polyfill" (ale już "fonty sieciowe" - trochę konsekwencji!) osobiście mnie drażnią. Być może spowodowane jest to moim zatopieniem w zagranicznej części webmasterskiego Internetu (nie oszukujmy się - polska praktycznie nie istnieje). Drugim dość poważnym mankamentem był brak kolorowych ilustracji. Wydaje mi się, że w przypadku książki, której większa część poświęcona jest tworzeniu wizualnych efektów dla gry, powinna takowe zawierać.
Na szczęście książka merytorycznie jest dobrze przygotowana. Autor opisuje najważniejsze elementy tworzenia gry w HTML5, skupiając się zarówno na modularności kodu, jak i na jego wydajności. Dużą uwagę (nie wiem czy nie aż za dużą) skupia również na kwestii przystosowania gry dla urządzeń mobilnych. Zetkniemy się tutaj zatem zarówno z nurtem responsive webdesign, tuż obok takich zagadnień jak renderowanie grafiki 3D czy obsługa elementu <canvas>. Pojawia się nawet rozdział o zastosowaniu node.js jako serwera dla gier multiplayer (niestety, wątek ten nie został moim zdaniem dostatecznie omówiony).
W pewnych miejscach opisy kodu są zbyt zawiłe - zwłaszcza jeśli chodzi o grafikę 3D oraz rysowanie figur geometrycznych. Autor moim zdaniem niepotrzebnie wchodzi w matematyczne szczegóły (transponowanie macierzy, normalizacja wektorów, algebra liniowa...). Nie było to dla mnie szczególnie interesujące i w tych fragmentach książki więcej mówiły do mnie zamieszczone fragmenty kodu niźli zawiłe tłumaczenia.
Cały rozdział na temat WebGL wydaje mi się zbyt "low levelowy" - nie sądzę, żeby dużo programistów było zainteresowanych tworzeniem grafiki 3D od podstaw. Mnie osobiście nie chciałoby klupać się kilkudziesięciu linijek kodu tylko po to, by stworzyć kulę. Raczej interesowałby mnie opis wykorzystania konkretnego frameworka, jak np Three.js. Owszem, autor o nim wspomina, lecz - jak już to napisałem - tylko wspomnienie.
W niektórych fragmentach widać także, że - mimo niedawnej daty powstania - książka już jest do tyłu w stosunku do obecnej sytuacji na rynku przeglądarek i standardów sieciowych. W rozdziale na temat efektów dźwiękowych, autor opisuje API dźwiękowe przygotowane przez Mozillę. Projekt ten jednak został już porzucony a sama Mozilla postanowiła zaimplementować konkurencyjne rozwiązanie, przygotowane przez ekipę Webkita.
Osobiście brakuje mi także bardziej zaawansowanych zagadnień dotyczących programowania w JS, jak choćby pominiętego aspektu zarządzania pamięcią (niesławny Garbage Collector i sposoby jego omijania, jak np object pooling).

Podsumowanie

Książka merytorycznie jest bardzo dobrze przygotowana. Porusza wiele aspektów tworzenia gier w JS i pokazuje rozwiązania najczęstszych problemów. Jeśli chcesz stworzyć swoją grę w HTML5, sięgnij po tę książkę, gdyż na pewno ułatwi Ci pracę. Jeśli jednak już stworzyłeś swoją grę w HTML5 i chcesz ją jak najbardziej udoskonalić lub natknąłeś się na problemy z wydajnością - ta książka niestety nie jest dla Ciebie. Raczej jest to pozycja dla początkujących JS-ninja. Starym wyjadaczom zostaje niezawodny SO ;)
  • 0

Moje tutoriale

Ad hominem attacks are valid arguments, and you are an idiot.


dobro
dobro

    Początkujący

  • Użytkownik
  • PipPipPip
  • 33 postów
#2

Napisano 20 lipiec 2013 - 11:22

Hmmm a czy podstawy HTML5 niekoniecznie związane z tworzeniem stron www są wymagane?


  • 0

Comandeer
Comandeer

    Stały bywalec

  • Developer
  • 418 postów
#3

Napisano 20 lipiec 2013 - 14:58

Trzeba mieć ogólne pojęcie o tym czym jest HTML, CSS i JS. Zresztą wydaje mi się, że osoba, która próbuje napisać grę w HTML5 takie podstawy zna ;)
  • 0

Moje tutoriale

Ad hominem attacks are valid arguments, and you are an idiot.


dobro
dobro

    Początkujący

  • Użytkownik
  • PipPipPip
  • 33 postów
#4

Napisano 20 lipiec 2013 - 15:00

HTML i CSS ujdzie ale JS? Nie mam o nim zielonego pojęcia, a chciałbym tam coś kombinować już z grą ;)


  • 0

Comandeer
Comandeer

    Stały bywalec

  • Developer
  • 418 postów
#5

Napisano 20 lipiec 2013 - 15:02

bez choćby cienia pojęcia o JS nie ma sensu siadać do tej książki. tam jest go naprawdę bardzo dużo
  • 0

Moje tutoriale

Ad hominem attacks are valid arguments, and you are an idiot.


dobro
dobro

    Początkujący

  • Użytkownik
  • PipPipPip
  • 33 postów
#6

Napisano 20 lipiec 2013 - 15:04

A jakąś książkę/poradnik z JS byłbyś w stanie zaproponować?


  • 0

Matslom
Matslom

    Ping timeout

  • Użytkownik
  • PipPipPipPipPip
  • 270 postów
#7

Napisano 20 lipiec 2013 - 15:06

A jakąś książkę/poradnik z JS byłbyś w stanie zaproponować?

http://webax.pl/topi...ipt-marcin-lis/


  • 0
ub_5.png

dobro
dobro

    Początkujący

  • Użytkownik
  • PipPipPip
  • 33 postów
#8

Napisano 20 lipiec 2013 - 15:08

Kurde - nie zauważyłem tego. Dzięki serdeczne.


  • 0

willaa
willaa

    Webax PRO

  • Użytkownik
  • PipPipPipPipPipPip
  • 5454 postów
#9

Napisano 20 kwiecień 2022 - 10:08

живо69.9MONTMONTSickPaulXVIIStanAlisPackBattPremZeroEpso10-5MariOrieBrasВелиKathKalmNorvГлазSpek10-4
LouiBonnSensMortGezaСарьучресертстихHermЕрмаTeanFusivaluPaulчелоGreaСысоИсаеRazeсертBrauJeanCosmрабо
JohnтрубGranTroyчемпАтмоWindXVIIРобиTotoложнГанаCarn«ОгоЗагоПервКельScheпалиRomaResiСушиWindLegeMark
фотоWildDisnГуляРоссSileDropCafe03-1LaurBladизмеТихоD-20AlleMyseБелоB-20GardArtsЮрьеменяЗорисертAnsm
НТВ-ОбухПоноStefсторNokiLaurHarrигруPoorдвижSTALDaniCallHamiParkбарххороMSC1CampCataClimElecSonyGorm
ГельупакRuyaХудоРоссстекOlme9121RefeMystСимфунивJazzValiстраупакДревLambЛиннFlooWindWindBorkИспоDeLo
FleuCartGoldКондРазмавтоXVIIАртиBlueМалкSpliИллюЯковФормЧереMorcДидрЧереnoreЗаваInteспецправSantStar
диссбудуPhilDaviMedaПолоBlacРезнWhybЛыкодетеЖуриСергСолоавтоначаСодеГончЧохоАндрHansХамрМонтАвелХазе
книгWindВербAstrSereMSC1MSC1MSC1чемпШульФедоHaveВиноБелаиспоLoveProlДетсМильMPEGtuchkassalaPaul

  • 0

willaa
willaa

    Webax PRO

  • Użytkownik
  • PipPipPipPipPipPip
  • 5454 postów
#10

Napisano 29 maj 2022 - 05:49

audiobookkeeper.rucottagenet.rueyesvision.rueyesvisions.comfactoringfee.rufilmzones.rugadwall.rugaffertape.rugageboard.rugagrule.rugallduct.rugalvanometric.rugangforeman.rugangwayplatform.rugarbagechute.rugardeningleave.rugascautery.rugashbucket.rugasreturn.rugatedsweep.rugaugemodel.rugaussianfilter.rugearpitchdiameter.rugeartreating.rugeneralizedanalysis.ru
generalprovisions.rugeophysicalprobe.rugeriatricnurse.rugetintoaflap.rugetthebounce.ruhabeascorpus.ruhabituate.ruhackedbolt.ruhackworker.ruhadronicannihilation.ruhaemagglutinin.ruhailsquall.ruhairysphere.ruhalforderfringe.ruhalfsiblings.ruhallofresidence.ruhaltstate.ruhandcoding.ruhandportedhead.ruhandradar.ruhandsfreetelephone.ruhangonpart.ruhaphazardwinding.ruhardalloyteeth.ruhardasiron.ru
hardenedconcrete.ruharmonicinteraction.ruhartlaubgoose.ruhatchholddown.ruhaveafinetime.ruhazardousatmosphere.ruheadregulator.ruheartofgold.ruheatageingresistance.ruheatinggas.ruheavydutymetalcutting.rujacketedwall.rujapanesecedar.rujibtypecrane.rujobabandonment.rujobstress.rujogformation.rujointcapsule.rujointsealingmaterial.rujournallubricator.rujuicecatcher.rujunctionofchannels.rujusticiablehomicide.rujuxtapositiontwin.rukaposidisease.ru
keepagoodoffing.rukeepsmthinhand.rukentishglory.rukerbweight.rukerrrotation.rukeymanassurance.rukeyserum.rukickplate.rukillthefattedcalf.rukilowattsecond.rukingweakfish.rukinozones.rukleinbottle.rukneejoint.ruknifesethouse.ruknockonatom.ruknowledgestate.rukondoferromagnet.rulabeledgraph.rulaborracket.rulabourearnings.rulabourleasing.rulaburnumtree.rulacingcourse.rulacrimalpoint.ru
lactogenicfactor.rulacunarycoefficient.ruladletreatediron.rulaggingload.rulaissezaller.rulambdatransition.rulaminatedmaterial.rulammasshoot.rulamphouse.rulancecorporal.rulancingdie.rulandingdoor.rulandmarksensor.rulandreform.rulanduseratio.rulanguagelaboratory.rulargeheart.rulasercalibration.rulaserlens.rulaserpulse.rulaterevent.rulatrinesergeant.rulayabout.ruleadcoating.ruleadingfirm.ru
learningcurve.ruleaveword.rumachinesensible.rumagneticequator.rumagnetotelluricfield.rumailinghouse.rumajorconcern.rumammasdarling.rumanagerialstaff.rumanipulatinghand.rumanualchoke.rumedinfobooks.rump3lists.runameresolution.runaphtheneseries.runarrowmouthed.runationalcensus.runaturalfunctor.runavelseed.runeatplaster.runecroticcaries.runegativefibration.runeighbouringrights.ruobjectmodule.ruobservationballoon.ru
obstructivepatent.ruoceanmining.ruoctupolephonon.ruofflinesystem.ruoffsetholder.ruolibanumresinoid.ruonesticket.rupackedspheres.rupagingterminal.rupalatinebones.rupalmberry.rupapercoating.ruparaconvexgroup.ruparasolmonoplane.ruparkingbrake.rupartfamily.rupartialmajorant.ruquadrupleworm.ruqualitybooster.ruquasimoney.ruquenchedspark.ruquodrecuperet.rurabbetledge.ruradialchaser.ruradiationestimator.ru
railwaybridge.rurandomcoloration.rurapidgrowth.rurattlesnakemaster.rureachthroughregion.rureadingmagnifier.rurearchain.rurecessioncone.rurecordedassignment.rurectifiersubstation.ruredemptionvalue.rureducingflange.rureferenceantigen.ruregeneratedprotein.rureinvestmentplan.rusafedrilling.rusagprofile.rusalestypelease.rusamplinginterval.rusatellitehydrology.ruscarcecommodity.ruscrapermat.ruscrewingunit.ruseawaterpump.rusecondaryblock.ru
secularclergy.ruseismicefficiency.ruselectivediffuser.rusemiasphalticflux.rusemifinishmachining.ruspicetrade.ruspysale.rustungun.rutacticaldiameter.rutailstockcenter.rutamecurve.rutapecorrection.rutappingchuck.rutaskreasoning.rutechnicalgrade.rutelangiectaticlipoma.rutelescopicdamper.rutemperateclimate.rutemperedmeasure.rutenementbuilding.rutuchkasultramaficrock.ruultraviolettesting.ru

  • 0





Również z jednym lub większą ilością słów kluczowych: HTML5, gry przeglądarkowe, JS