#gamedev

43
671

Udało mi się ostatnio wrócić na trochę dłużej do projektu własnego "silnika gier".

Nie poddałem się jeszcze. Trochę różnych zmian wprowadzałem i podokrążyłem kilka rzeczy, żeby były w stanie działać. Na filmiku pokazuję proste animacje tłoku. Na razie na tylko tyle mnie stać, jeśli chodzi o tworzenie w blenderze.
Będzie troszkę technicznego pitolenia.


Najtrudniejsze, nad czym ostatnio główkowałem, to VAT (vertex animation texture). W skrócie, animacje obiektów nie ogarnia jak to zazwyczaj bywa CPU tylko GPU. U mnie animacje zapisuję jako plik png, dzięki czemu bez problemu mogę taką grafikę wykorzystać w shaderze. Pomysł na samo wykorzystanie pliku graficznego do zapisywania tego typu danych jest imo bardzo ciekawy. Każdy piksel, np. w formacie PNG, ma kilka warstw (RGBA) i w każdej z tych warstw można zapisać jakieś dane, np. nową pozycję danego wierzchołka.

Kolejne wyzwanie, które sobie wymyśliłem, to przejście z programowania w samym OpenGL (Silk.Net.OpenGL) na coś bardziej nowszego i uniwersalnego.
Trafiłem na Zenith.NET, bibliotekę-warstwę, gdzie, pisząc jedno, będzie to bez problemów działać na różnych API graficznych (Vulkan 1.4, DX12 oraz Metal) pod spodem. Poziom kontroli nad tym, jak wszystko działa, można porównać do tego, jakby programowało się w samym Vulkan-ie. Dodatkowym plusem jest jeszcze obsługa języka shaderów Slang (HLSL). Miodzio.

W wyrenderowaniu pojedynczego obiektu z teksturami lub kolorami nie mam już najmniejszego problemu.
Pod górkę zaczyna się, gdy chce się więcej obiektów na raz wyrenderować. Wtedy nie ma wyjścia i jedynym wyjściem jest zabawa z optymalizacją. Cach-owanie czego się da, batch rendering i inne pomniejsze.
Batch rendering można porównać do wysyłania wiadomości do wielu ludzi. Zamiast wysyłać do każdego człeka po kolei wiadomość, rozsyłamy na raz grupowo do wszystkich. Także zamiast wysyłać pojedynczą instrukcję dla każdego obiektu, wysyłamy jedną, żeby na raz wygenerowało ich kilka.

Zacząłem dodatkowo implementować pierwszą wersję systemu ECS. Odpowiada za zarządzanie obiektami, ich właściwościami i takie tam.
Co do GUI, to nadal pozostaje Dear ImGui. Aż takim masochistą nie jestem, żeby coś swojego robić.
Obiekty do renderowania wczytuję z plików .obj. Jest jednym z najprostszych formatów plików 3d, w których bez czytania dokumentacji ogarniesz zapisane dane. W parze ładuję też plik .mtl, który zawiera informację o kolorach i teksturach i jest tak samo prosty jak .obj.


Jak będą siły i czas, to będę sobie nadal w tym grzebał. Motywacja nadal jest, zwłaszcza że udało mi się parę blokerów pokonać i coś już faktycznie zaczyna działać, a to mnie jeszcze bardziej motywuje.

Robię to głównie dla siebie. Lubię poznawać, jak coś pod spodem działa. Tym razem padło na grafikę komputerową.

Im dłużej samemu w tym siedzę, tym bardziej podziwiam tych, co spędzają w tym większość swojego czasu.
Web-ówka się do tego nie umywa.

#gamedev #programowanie #csharp #chwalesie #grafikakomputerowa

Szanuje fes ludzi którzy potrafią takie rzeczy albo chociaż wiedzą jak się za takie coś zabrać.

Web-ówka się do tego nie umywa.

Ta, ogólnie webdev to jest chyba najprostsza gałąź programowania z niemal zerowym progiem wstępu. Już nawet tworzenie aplikacji desktopowych (poza electronem) jest trudniejsze.
Jedynie różnica taka, że pojedyncza osoba jest w stanie napisać jakiś duży projekt webowy w sensownym czasie a tymczasem tego silnika nigdy nie skończysz xd. W sensie fajny projekt aby się pobawić i pouczyć albo żeby wpisać sobie go do portfolio. No ale na dłuższą mete pisanie czegoś takiego samemu nie ma większego sensu. No i na githubie jest masa takich eksperymentalnych niedokończonych silników w przeróżnych językach.

Trafiłem na Zenith.NET , bibliotekę-warstwę, gdzie, pisząc jedno, będzie to bez problemów działać na różnych API graficznych (Vulkan 1.4, DX12 oraz Metal) pod spodem. Poziom kontroli nad tym, jak wszystko działa, można porównać do tego, jakby programowało się w samym Vulkan-ie. Dodatkowym plusem jest jeszcze obsługa języka shaderów Slang (HLSL). Miodzio.

Na Twoim miejscu skupiłbym się nie na tym jakie drzwi otwiera, a na tym jaka jest tego cena, i w jakie ograniczenia Cię to wepchnie na kolejnych etapach.

@tomasz-frankowski Akurat dobrze wiem co ze sobą to niesie.

Ograniczenia? Jak się siedzi nad tym samemu to największe. Śledzę sobie kilka OSS silników I widzę, ilu ludzi potrzeba, żeby coś sensownego osiągnąć. Samo to, że w zespole można sobie podzielić na role kto się czym zajmuje I specjalizuje dużo daje. Samemu muszę być ekspertem we wszystkim.

A to tylko część ograniczeń.

Nie planuje też robić kto wie jakich rzeczy, nie ma to być też pełnoprawny silnik. Bez edytora, żadnych wodotryskow I przekombinowanych rzeczy.

Dla własnej satysfakcji.

@Garf ekspert ma wielokrotne doświadczenie w całym procesie wdrożenia. Ekspert się nie wyjebie- zastanów się czy nie robisz tego żeby się jednak trochę poobijać. Bo bez obijania niczego się nie nauczysz.

@tomasz-frankowski Wybacz, zapomniałem użyć cudzysłowia… Wiesz, żeby było wiadomo, że nie miałem tego dosłownie na myśli.

Zaloguj się aby komentować

chwilka przerwy od spamowania gdzie możecie zobaczyć mój najnowszy film,
info jest na moim tagu: #w8jek
a na piąteczek chciałem się pochwalić swoim małym fanartem, zainspirowanym pewną polską grą, która niedawno miała premierę:

#animacja #tworczoscwlasna #gif #gamedev

a8a5ee82-2fe5-4209-a83b-f1e20a83c0b7

o kurse, nie wiedzialem ze ta gra jest polska, a pojawila sie na kilku kanalach ktore subskrybuje i na pewno qyroznia sie sposrod konkurencji. Super

Zaloguj się aby komentować

Zaloguj się aby komentować

Zaloguj się aby komentować

użyłem trochę hakiermańskich sposobów do zbejkowania wszystkiego, ale coś tam jest (tylko normale pod pewnymi kątami wyglądają na wypukłe a pod innymi na wklęsłe, więc może trzeba będzie zrobić normale od nowa) #grafika3d #gamedev #blender

dd1e476a-4e17-4da8-ac12-24cd72514119
f8ec68f0-e81f-4658-ba62-f971a9f2c6e4
845253d3-3938-4bc7-aecf-b908850bac5c
e6c00578-faab-4bec-99fb-4d01042bece0

Dodałeś dużo małych detali, ale nie ma ich w ogóle w średniej wielkosci. Ani na geometrii (highpoli ani lowpoly), ani na teksturach.

Dodaj troche średniej wielkości detalu na highpoly.
Np. szkło na hełmie tak po prostu przechodzi do metalu. Klapke z tyłu otwiera sie/trzyma sie na sile dobrej woli.
"hakiermańskich sposobów do zbejkowania" troche sie marnuje, bo wcale tego detalu na tym highpoly nie ma za dużo.

A na teksturach gryzie sie, że model jest czysty jak z fabryki, ale ma pełno uszkodzeń powierzchniowych od używania. Może zabrudź go troche.

@Zuorion nie jest czysty, warstwę brudu dodałem, ale trochę znika pod niektórymi kątami bo zbejkowany rougness ma za mały kontrast w tych miejscach

Zaloguj się aby komentować

Dorobiłem detale do materiału przez plugin Uberpaint, ale to domyślnie robi vertex paint i za c⁎⁎ja nie da się tego dobrze zbejkować, tylko bake diffuse'a działa dobrze #grafika3d #gamedev #blender #tworczoscwlasna

6988ab07-fc9f-472b-b3ca-c409b8e7918f
6bea6b38-bc39-410f-ae93-afd955029e22
5c7ed601-86e5-4dfb-a6fb-0d8d35d55603
58489272-01ed-48f7-be87-2b2b355594b6

Zaloguj się aby komentować

2-3 lata temu zacząłem modelować postać robota do gry, którą chcę zrobić, ale odłożyłem ten projekt do szuflady, teraz do niego pomału wracam (utworzyłem na razie projekt unreala i stworzyłem mappingi inputów). Oryginalny model był mocno high poly, więc trzeba było zrobic retopo, ale, że jestem leniwy to szukałem długo najlepszego sposobu, żeby zrobić to automatycznie. Stanęło na tym, że użyłem modyfikatora decimate w trybie unsubdivide i dostałem nawet niezłą topologię prostokątów, pomijając parę miejsc z nieco gęstszymi trójkątami ale c⁎⁎j, zostaw tak. Zrobiłem UV unwrap i zbejkowałem tekstury z proceduralnych materiałów i normal mapę z detali wersji high poly. Tak to wygląda teraz #grafika3d #blender #gamedev #tworczoscwlasna

0360fde6-1ba8-4a2c-9f53-49b21771c396
1757bd8c-5e5b-4ef1-9786-55d77737145b

@MrGerwant Polecam Boxcutter i Hardops (addons) do modelowania takich brył. W nich to wygląda na robótkę na 20 minut. I większość niedoskonałości można nimi poprawić niedestrukcyjnie.

Zaloguj się aby komentować

Co myślicie o gierce mobile o wedkowaniu, ktora wyglada mniej więcej jak google maps ? Kazdy zainteresowany moglby łowić w swojej okolicy. Nastawiam sie narwalizm, gameplay typu spokojna rozgrywka z pracą w tle i wiadomościami push ( np ze jest branie). Przemieszcczanie sie zajmuje czas, trzeba kombinować z miejscami i metodami.


#gamedev #gry #wedkarstwo

641a4cce-4910-44c3-ad28-3e69b94a0b60
4ca8b67f-3133-46d5-9b07-b8c0d989e431

Zaloguj się aby komentować

Hej!


W miesiac udało mi sie zebrać 1500 wishlist do mojej gry! Jak na pierwszy raz to bardzo dobry wynik.


Chciałbym was poprosić o wsparcie. Steam promuje gry dopiero jak przebije się okolo 6-7 tysięcy wishlist.


Stad moja prośba - nawet jeśli nie chcecie kupic mojej gry - dodajcie ją do wishlisty, wyślijcie znajomym. Kazda taka wishlista mi pomoże


Dodac wishliste możecie tutaj:

https://store.steampowered.com/app/4137830?utm_source=hejto


Dorzucam do posta concept art na kapsułę do gry i logo. Które waszym zdaniem najlepiej pasuje?


#chwalesie #gamedev #zebroplusy

af23c9c3-315b-49e2-bfb4-44fe59bc599b
ab77e3c9-345b-4fab-a4fa-7f872fe7eaf9
995312bd-dad3-4fda-8bf4-ee74681c0797
d1a7487e-242e-431a-9d02-aa0d3080ce22

Zaloguj się aby komentować

Pobawiłem się Metahuman Grooms for Houdini i niby udało się zrobić jakiegoś grooma, ale nie mogę eksportować, nie wiem czemu #houdini #grafika3d #unrealengine #gamedev #zalesie

Zaloguj się aby komentować

Transfer oryginalnej tekstury na metahumanowe UV się udał i nawet dostałem lepszy model, żeby odwzorować geometrię dla metahumana niż to co wygenerowałem wcześniej przez metahuman identity z oryginału - w Faceform Wrap mam więcej kontroli nad tym gdzie umieszczam punkty do deformacji modelu (niestety to trial i nie mam kasy, żeby kupić pełną wersję bo kosztuje toto 570 USD) #unrealengine #gamedev #grafika3d #wiedzmin

2abb9c16-860b-4c78-a8fd-63cb0c9a025f

Zaloguj się aby komentować

Zaloguj się aby komentować

Zaloguj się aby komentować

Wyeksportowałem model Gerwanta z Wiedźmina 3 przez RedKit i zaimportowałem do Metahumanów, zamierzam zrobić teksturę na bazie oryginalnej i groomy włosów/brody jak ogarnę houdini. Na razie po imporcie i lekkiej edycji wygląda tak #unrealengine #gamedev #wiedzmin

00ccc6f0-f8aa-4cda-b797-c047e2215500

Zaloguj się aby komentować

Instalował ktoś Metahuman Groom Tools for Houdini? Bo coś chyba nie bangla i mam tylko trzy node'y pod MH Groom: Workspace, Viewport Lights i Export, a we wszystkich filmach na yt było dużo więcej. #unrealengine5 #gamedev #houdini #grafika3d #kiciochpyta

Zaloguj się aby komentować

Kupiłem ostatnio na partyzanta A Plague Requiem. Totalnie mi się ta gra nie spodobała. Ogólnie widać napracowanie, czuć, że ktoś się przy tej grze postarał aby wymyślić koncept rozgrywki, mechaniki itd., natomiast to wszystko jest jak krew w piach, bo ta gra zwyczajnie jest straszliwie nudna.


Otóż praktycznie cały gameplay opiera się na rozwiązywaniu zagadek środowiskowych jak przejść przez kolejne hordy szczurów, które jedyne czego się boją to światła.


Do tego gra ma nieco eksploracji oraz skradania. Skradanie ma położony nacisk na niezabijanie nikogo, gdyż protagonistka nie posiada zbyt wyszukanego uzbrojenia i jej praktycznie jedyna skuteczna metoda na zabicie opancerzonych przeciwników to wprowadzenie ich w hordę szczurów.


I tak na początku to wydało mi się nawet ciekawe, ale ta cała gra oparta jest o ten sam żmudny, nudnawy po pewnym czasie koncept omijania hord szczurów, przeplatanych z pokracznym skradaniem się między przeciwnikami ludzkimi.

I to nie jest tak, że ja nie lubię skradania - lubię, ale to w A Plague Tale jakoś w ogóle nie dawało mi satysfakcji. Zagadki środowiskowe też są fajne, ale po pierwsze jak są jakoś urozmaicone, a nie stanowią główny trzon gameplay'u a druga sprawa jeśli wykonane są w ciekawy sposób jak np. w The Legend of Zelda Breath of The Wild.


A Plague Tale ma bardzo prymitywne zagadki środowiskowe bo polegają one na odgadnięciu drogi, którą wymyślili nam twórcy. To nie jest Zelda, gdzie dany problem można rozwiązać na różne sposoby - tu sposób jest zwykle tylko jeden i musimy odegrać scenariusz, który przewidzieli twórcy.


Ogólnie rzecz biorąc wielka szkoda, bo sam pomysł na grę, setting, fabuła, świat, jakość od strony technicznej naprawdę dobre, ale wszystko rozbija się o nudny, powtarzalny do bólu gameplay oparty o moim zdaniem niezbyt ciekawą mechanikę.


#gamedev #gry #playstation #pcmasterrace

65d4a1ab-dcd7-4030-aaeb-39409e7267f7

@Matheo780 ta gra przypomina mi The Last of Us, gameplayowo przeciętne ale nadrabia historią, klimatem i ładnymi obrazkami. Mi Requiem siadło, fragmenty skradankowe faktycznie nie były zbyt odkrywcze względem pierwszej części ale sama historia była na tyle ciekawa, że ciągnęła mnie do końca.

@Stashqo tylko że np. The Last of Us mi się podobało zarówno fabularnie jak i gameplayowo. TLoU miało dla mnie fajny gameplay, a A Plague Tale nie

@Matheo780 spoko, gusta i guściki. Gameplay TLOU był spoko w momencie premiery na ps3 w 2013r, w dwójce niestety zbyt wiele do niego nie dodali i już był juz taki se. O ile fabularnie pierwsze TLOU było super, tak dwójka słabo i dużo poniżej Plague Tale w moim osobistym rankingu.

Pierwsza część była dla mnie całkiem spoko, nie wynudziła mnie, ale za to część druga - masterpiece! Wyglad, muzyka, historia w tle, cały ten mroczy i brutalny klimat, no dla mnie to byla chyba jedna z lepszych gierek, które ograłem. Ten sposób zabijania wrogów własnie jakoś bardziej mi pasuje, niż gdyby miała biegać z mieczem i bić się z 2 razy od niej wiekszymi uzbrojonymi przeciwnikami. Główna bohaterka jest chyba jedną z moich ulubionych protagonistek

@Harpersy świat jest naprawdę fajny, klimat, muzyka też, natomiast co do bohaterów to dla mnie są oni tacy sobie, natomiast gameplay wieje nudą strasznie. Ktoś fajnie napisał że jakby to była gra na kilka godzin to nie byłoby problemu, ale tu te poziomy są naprawdę długie

Zaloguj się aby komentować

@Marcus_Aurelius Gratulacje! Jeśli nie ma takich propozycji, to możesz później zrobić DLC "mikroapartamenty" gdzie na 10m2 będzie trzeba wcisnąć kuchnię, łazienkę, łóżko i meble

Trochę wiem, ile to pracy, sam dłubałem kiedyś dosyć sporo w Unity. Ukończyć dopracowaną grę to prawdziwe osiągnięcie.

Zaloguj się aby komentować

Zaloguj się aby komentować