Posty

Wyświetlam posty z etykietą grafika3d

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...

Nauka programowania 2019

Obraz
Ten rok spędzam na nauce różnych rzeczy. Najpierw był blockchain, a dokładniej Ethereum. Trochę hello worldów zrobiłem. W ogóle dziwnie - bo wcześniej oglądałem różne teoretyczne wprowadzenia o blockchain i byłem pewny, że wiem mniej więcej, o co tam chodzi. Tutorial do Ethereum też wydawał się łatwy, prosty kodzik, bez problemu. Okazało się jednak, że o ile koncepcyjnie ogarniam, to zakodować i uruchomić prawdziwy program w blockchain to już nie jest takie proste. Nie umiałem odpalić apki czy zdeployować kontraktu. Chociaż jakoś to potem oczywiście odpaliłem, ale chyba tylko dlatego, że wystarczająco długo próbowałem ;) Ale nic to, myślę, że do tego jeszcze wrócę. Jednak i tak mimo wszystko oceniam blockchain za coś łatwiejszego od np. machine learning (tam to dopiero masakra. Więcej teorii trzeba zakumać). Potem zacząłem powracać do Three.js i robić grę (którą dalej robię i zamierzam ją jeszcze długo robić, aż zrobię do końca, czyli pewnie z rok albo i więcej), przy okazji po...

Three.js. Czym to się je?

Projekt, o którym pisałem ostatnio, musi trochę poczekać, bo w międzyczasie wpadłem na pomysł zrobienia gry w Three.js . Wzięło się to z tego, że ostatnio prowadzę rozmowy w sprawie współpracy z firmą, która robi projekt w WebGL i chciałem sobie przypomnieć temat robienia grafiki 3D w JavaScript. I z rozpędu zacząłem grę robić. O grze napiszę później, jednak teraz trochę o samej bibliotece. Ale nie będzie to tutorial, tylko rzut okiem z lotu ptaka. Jaki problem rozwiązuje ta biblioteka? Czy jeśli jest natywne api do robienia 3D w przeglądarce (WebGL), to czy warto w ogóle osobnej biblioteki używać? Czy to taki kaprys, podobny do używania jQuery w 2019 roku? Przecież można pisać w WebGL. Wyrzućmy biblioteki w kosmos! Cóż, z używaniem suchego WebGLa jest taki problem, że tam proste rzeczy robi się w złożony niskopoziomowy sposób. Zróbcie sobie jakiś tutorial, to zobaczycie, że nawet, żeby wyrenderować obracającą się kostkę, trzeba się namęczyć. Więc o ile warto poznać suchego We...