Posty

Wyświetlam posty z etykietą workflow

Nauka Three.js

Obraz
Ostatnio (od stycznia) mocno wszedłem w temat Three.js. Masę rzeczy się nauczyłem. No i zrobiłem taki edytor . chociaż on jeszcze nie skończony jest. Tylko, że w międzyczasie inne pomysły mnie naszły, więc z jednego projektu w Three.js zrobiłem kilka projektów. Wydzieliłem "silnik" oraz rzeczy specyficzne dla projektu i jakby robię kilka apek na jednym silniku (nawet w jednym repo wszystko jest, tak wygodniej). Poza tym: nauczyłem się operować na wierzchołkach, tworzyć własną geometrię. W ten sposób tworzę teren: https://github.com/hex13/tileterrain/ . Jest on inspirowany terenem, jaki miały gry izometryczne z lat 90 stworzyłem własny shader. I dzięki temu mam inny kolor terenu na różnych wysokościach (na górze śnieg, niżej skały, niżej trawa, a najniżej piasek). A przedtem to shaderów się bałem. poznałem wiele dziwactw Three.js. Niestety jest to biblioteka, która ma wiele rzeczy nieintuicyjnych i trzeba naprawdę uważnie czytać dokumentację + uczyć się na własnych błęda...

edytor gier + silnik w jednym (tak, robię własny silnik).

Zmieniło się trochę. Nie tylko robię edytor, ale i cały silnik do gier w JavaScript (nastawiam się na 2D). Dlaczego? Cóż, zacząłem robić ten edytor na frameworku Phaser, co początkowo dało mi kopa. Phaser ma bardzo dobre wsparcie, dużo przykładów i świetne community. Na każdy problem mogłem znaleźć szybko odpowiedź w necie. Phaser posiada również dużo przydatnych ficzerów do obsługi sprajtów (częściowo wziętych z biblioteki Pixi). Więc mogłem zrobić szybko mój prototyp edytora . Problem jednak w tym, że Phaser to framework, więc tak jak każdy framework - ogranicza . Ciężko zrobić coś większego, dopasować to pod swoje potrzeby. Dlatego postanowiłem zrobić własny silnik, dopasowany do moich potrzeb. Czy to nie jest porywanie się z motyką na słońce i niepotrzebne odkrywanie Ameryki? Nie. Zrobienie pewnych rzeczy samemu jest często o wiele prostsze niż walka z frameworkiem-kobyłą. Robiąc własny silnik mogę również wszystko kontrolować, wprowadzać tam taką architekturę oraz wz...

Edytory

Zmieniło mi się podejście do edytorów. Kiedyś - gedit, Notepad++. Albo inny lekki edytor. Atom ostatnio (dalej z niego korzystam). Jednak w końcu uległem modzie i zakupiłem licencję na Webstorma, który stał się moim głównym edytorem. (chociaż wspomagam się Vimem czy Atomem). Webstorm nie jest idealny, w zasadzie niby mówi się o nim IDE, ale w przypadku JavaScriptu ciężko o IDE z prawdziwego zdarzenia, więc jest to IDE na pół gwizdka. W dodatku z pluginami bieda. Albo nie umiem znaleźć. W każdym razie WebStorm raczej pluginami nie grzeszy. I ciężko napisać swoje, bo się je pisze w... Javie. Więc WTF.  Jeszcze Javy mam się uczyć? Tym niemniej Webstorm jest jednak bardzo porządnym programem a jego wersja 10 jest już w miarę inteligentna. Potrafi wykrywać np. nieużywane zmienne i je wyświetla innym kolorem, co mnie cieszy. Dzięki temu od razu wiem czego nie używam. Tylko niektóre motywy graficzne w wersji podstawowej są dość mało kontrastowe (obecnie korzystam ze zmodyfikowanego Mo...