Skocz do zawartości

I am Lord

Użytkownicy
  • Postów

    4 891
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    53

Treść opublikowana przez I am Lord

  1. O wow, faktycznie tak się dzieje. Nie zauważyłem, nie mam czasu się teraz temu przyjrzeć.
  2. To ile według ciebie jest warte? 300 zł wykładasz teraz i ci służy przez 2 lata, ( przypuszczam że 2 jak ostatnio ) według mnie dobra cena.
  3. tzn nie rozumiem, ty chcesz zwiększyć rozdzielczość pulpitu? No bo moim skryptem możesz sobie dowolnie okno rozciągać i się dostosuje.
  4. Cena jest ok, to nie jest tylko nowe IDE, widać usprawnienia już na poziomie języka, skoro dodali w końcu jakąś dobrą obsługę arrayów, jest nawet operator warunkowy, zmiany jeszcze małe ale to kwestia czasu. I widać też zmiany w 3D jakieś sugerujące dalszy rozwój bo są funkcje np dla kamery i to cała masa funkcji. Jak tylko będzie sprzedaż dostępna to zamoczę w 3D łapki :) i zdam relację.
  5. A zobacz czy takie coś ci odpowiada https://gmclan.org/up539_4_Html5_starter_Canvas_scaling.html Niby zrobiłem to pod Html5 żeby sobie user mógł dowolnie zmieniać rozmiar okna przeglądarki a gra się dostosuje ale na EXE też to działa.
  6. A to ciekawe że gry które nie chciały się dobrze przekonwertować do GMS1 będą działać na GMS2 :D
  7. Za pewne będzie tak jak ostatnio, kupisz jedno to po czasie będziesz mieć zniżkę na pozostałe moduły.
  8. A ja myślałem że już da rade kupić, teraz spojrzałem że są szare przyciski ale ze mnie głupek :D Będziesz mógł na pewno normalnie, upgreadować co chcesz. Patrzcie co wróciło: variable_instance_exists() :P
  9. Fervi ale po co od razu się rzucać na mastera :P Edit: Aha chciałem kupić ale jest maintenance. : / Najbardziej mnie ciekawi co z tym 3D bo ponoć wywalili całkiem, korci mnie by zweryfikować to.
  10. To w końcu jest ta subskrypcja czy nie? :P 60$ brzmi spoko i ile to jednorazowe jest.
  11. Wydaje mi się że to są nody więc różnica kolosalna. Takie same rozwiązanie jest np w Blenderze do programowania własnych shaderów.
  12. Bez sensu jest robienie na takiej starej wersji GMa cokolwiek. Nikt tego nie używa, nie ma nawet żadnego legalnego sposobu by pobrać GM8.1
  13. Ostatnio mi tego brakowało jak robiłem skrypt generujący model 3D z patha na MP
  14. No dobra zrobiłem 2 wersje takich bloczków. Jeden jest bez sufitu i podłogi, ma 4 ściany a drugi normalny sześcian. Użyłem pr_trianglelist zamiast optymalniejszego pr_trianglestrip ponieważ to drugie byłoby ci o wiele trudniej zrozumieć. Wobec tego w modelu nakładają się na siebie wierzchołki, wizualnie to zupełnie nic nie zmienia. Oczywiście w przypadku z 6 scianami textury będą mniejszej rozdzielczości bo zajmują więcej miejsca na obrazku. Chyba że zwiększysz obrazek. Jak zmienisz wielkość obrazka to musisz zmienić 'len' 4 ścienny: tworzenie modelu. Zmienna 's' odpowiada za wielkość bloczku, a tekturę ustaw swój sprite według szablonu GML s = 64; textura = sprite_get_texture(sCubeTex4, 0); cube4 = d3d_model_create(); d3d_model_primitive_begin(cube4, pr_trianglelist); /* Widok z gory, numery scian, kropka to origin xxxx 1 xxxx /\ -y x x || 4 . 2 || UpVector = ( 0, 0, 1 ) x x || czyli os Z to wysokosc i jest dodatnia xxxx 3 xxxx []========> x */ len = 256/512; // dlugosc textury na spritcie wyrazona w wartosci od 0 do 1 // sciana 1 // trojkat 1 d3d_model_vertex_normal_texture(cube4, s, -s, -s, 0, -1, 0, 0, len); d3d_model_vertex_normal_texture(cube4, s, -s, s, 0, -1, 0, 0, 0); d3d_model_vertex_normal_texture(cube4, -s, -s, s, 0, -1, 0, len, 0); // trojkat 2 d3d_model_vertex_normal_texture(cube4, s, -s, -s, 0, -1, 0, 0, len); d3d_model_vertex_normal_texture(cube4, -s, -s, s, 0, -1, 0, len, 0); d3d_model_vertex_normal_texture(cube4, -s, -s, -s, 0, -1, 0, len, len); // sciana 2 // trojkat 1 d3d_model_vertex_normal_texture(cube4, s, s, -s, 1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube4, s, s, s, 1, 0, 0, len, 0); d3d_model_vertex_normal_texture(cube4, s, -s, s, 1, 0, 0, len+len, 0); // trojkat 2 d3d_model_vertex_normal_texture(cube4, s, s, -s, 1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube4, s, -s, s, 1, 0, 0, len+len, 0); d3d_model_vertex_normal_texture(cube4, s, -s, -s, 1, 0, 0, len+len, len); // sciana 3 // trojkat 1 d3d_model_vertex_normal_texture(cube4, -s, s, -s, 0, 1, 0, 0, len+len); d3d_model_vertex_normal_texture(cube4, -s, s, s, 0, 1, 0, 0, len); d3d_model_vertex_normal_texture(cube4, s, s, s, 0, 1, 0, len, len); // trojkat 2 d3d_model_vertex_normal_texture(cube4, -s, s, -s, 0, 1, 0, 0, len+len); d3d_model_vertex_normal_texture(cube4, s, s, s, 0, 1, 0, len, len); d3d_model_vertex_normal_texture(cube4, s, s, -s, 0, 1, 0, len, len+len); // sciana 4 // trojkat 1 d3d_model_vertex_normal_texture(cube4, -s, -s, -s, -1, 0, 0, len, len+len); d3d_model_vertex_normal_texture(cube4, -s, -s, s, -1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube4, -s, s, s, -1, 0, 0, len+len, len); // trojkat 2 d3d_model_vertex_normal_texture(cube4, -s, -s, -s, -1, 0, 0, len, len+len); d3d_model_vertex_normal_texture(cube4, -s, s, s, -1, 0, 0, len+len, len); d3d_model_vertex_normal_texture(cube4, -s, s, -s, -1, 0, 0, len+len, len+len); d3d_model_primitive_end(cube4); Sześcian: GML /// model create s = 64; textura = sprite_get_texture(sCubeTex6, 0); cube6 = d3d_model_create(); d3d_model_primitive_begin(cube6, pr_trianglelist); len = 170/512; // dlugosc textury na spritcie wyrazona w wartosci od 0 do 1 // sciana 1 // trojkat 1 d3d_model_vertex_normal_texture(cube6, s, -s, -s, 0, -1, 0, 0, len); d3d_model_vertex_normal_texture(cube6, s, -s, s, 0, -1, 0, 0, 0); d3d_model_vertex_normal_texture(cube6, -s, -s, s, 0, -1, 0, len, 0); // trojkat 2 d3d_model_vertex_normal_texture(cube6, s, -s, -s, 0, -1, 0, 0, len); d3d_model_vertex_normal_texture(cube6, -s, -s, s, 0, -1, 0, len, 0); d3d_model_vertex_normal_texture(cube6, -s, -s, -s, 0, -1, 0, len, len); // sciana 2 d3d_model_vertex_normal_texture(cube6, s, s, -s, 1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube6, s, s, s, 1, 0, 0, len, 0); d3d_model_vertex_normal_texture(cube6, s, -s, s, 1, 0, 0, len+len, 0); d3d_model_vertex_normal_texture(cube6, s, s, -s, 1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube6, s, -s, s, 1, 0, 0, len+len, 0); d3d_model_vertex_normal_texture(cube6, s, -s, -s, 1, 0, 0, len+len, len); // sciana 3 d3d_model_vertex_normal_texture(cube6, -s, s, -s, 0, 1, 0, 0, len+len); d3d_model_vertex_normal_texture(cube6, -s, s, s, 0, 1, 0, 0, len); d3d_model_vertex_normal_texture(cube6, s, s, s, 0, 1, 0, len, len); d3d_model_vertex_normal_texture(cube6, -s, s, -s, 0, 1, 0, 0, len+len); d3d_model_vertex_normal_texture(cube6, s, s, s, 0, 1, 0, len, len); d3d_model_vertex_normal_texture(cube6, s, s, -s, 0, 1, 0, len, len+len); // sciana 4 d3d_model_vertex_normal_texture(cube6, -s, -s, -s, -1, 0, 0, len, len+len); d3d_model_vertex_normal_texture(cube6, -s, -s, s, -1, 0, 0, len, len); d3d_model_vertex_normal_texture(cube6, -s, s, s, -1, 0, 0, len+len, len); d3d_model_vertex_normal_texture(cube6, -s, -s, -s, -1, 0, 0, len, len+len); d3d_model_vertex_normal_texture(cube6, -s, s, s, -1, 0, 0, len+len, len); d3d_model_vertex_normal_texture(cube6, -s, s, -s, -1, 0, 0, len+len, len+len); // góra d3d_model_vertex_normal_texture(cube6, -s, s, s, 0, 0, 1, len*2, len); d3d_model_vertex_normal_texture(cube6, -s, -s, s, 0, 0, 1, len*2, 0); d3d_model_vertex_normal_texture(cube6, s, -s, s, 0, 0, 1, len*3, 0); d3d_model_vertex_normal_texture(cube6, -s, s, s, 0, 0, 1, len*2, len); d3d_model_vertex_normal_texture(cube6, s, -s, s, 0, 0, 1, len*3, 0); d3d_model_vertex_normal_texture(cube6, s, s, s, 0, 0, 1, len*3, len); // dol d3d_model_vertex_normal_texture(cube6, -s, -s, -s, 0, 0, -1, len*2, len*2); d3d_model_vertex_normal_texture(cube6, -s, s, -s, 0, 0, -1, len*2, len); d3d_model_vertex_normal_texture(cube6, +s, s, -s, 0, 0, -1, len*3, len); d3d_model_vertex_normal_texture(cube6, -s, -s, -s, 0, 0, -1, len*2, len*2); d3d_model_vertex_normal_texture(cube6, s, s, -s, 0, 0, -1, len*3, len); d3d_model_vertex_normal_texture(cube6, s, -s, -s, 0, 0, -1, len*3, len*2); d3d_model_primitive_end(cube6); wyświetlanie: GML d3d_model_draw(cube4, x, y, z, textura); d3d_model_draw(cube6, x, y, z, textura);
  15. Hmm zdaje mi się że ta 4 ikonka to pathe. Pathe w roomach to by było coś :) A to chyba warstwy obiektów a nie tilesów hmmm tak myślę.
  16. Wyszukiwaniem binarnym np. Przyklad jest gdzies na gmclanie
  17. Wystarczy narysować o 1 jednostkę odległości z przodu. W taki sposób robi się decale, czyli wszystkie efekty zniszczeń krwi itd w grach. d3d_draw_block() nie zrobisz różnych textur ścian bo tam UV mapa jest skopana. Trzeba zrobić własny model sześcianu tymi http://docs.yoyogames.com/source/dadiospic...dels/index.html funkcjami lub narysować sobie w Blenderze z poprawnym UV. Jak nie zapomnę to ci taki model zrobię w weekend.
  18. Ale nie potrzebny ci żaden program do rysowania modeli. Możesz stworzyć własny model uzywając GML, to będzie bardzo proste. Najbardziej skomplikowany model w tym rozwiązaniu to tylko 4 wywołania funkcji d3d_draw_wall.
  19. to takie binarne łączenie? Taki prawie że oneliner
  20. Własnie mi chodzi o to że może jakieś zmiany w samym silniku poczynili. Przez które tilesety nie będą tylko backgroundem a czymś więcej.
  21. Hmmm czyżby poza sprite, backgorund editorem był osobny dla tilesów? To by oznaczało jakieś zmiany w GML dla tilesów.
  22. Ostatnio robiłem na tym i moge ci powiedzieć że są problemy z połączeniami nie blokującymi grę. Są 2 typy połączenia: takie które freezuja grę na czas połączenia z serwerem i takie które nie blokują. To drugie ma jakiegoś buga którego dało mi się obejść ale kosztowało mnie to masę czasu na douczenie się. Wiem że to bug bo sprawdzałem czy wszystko mi działa na starszej wersji GMa i bez zmiany kodu na starszych mi działało wszystko cacy a na tym nowym buildzie już nie. Także rób to na ustawieniach: GML network_set_config(network_config_use_non_blocking_socket, false); będziesz mieć mniej problemow no ale nie będziesz mógł sobie pozwolić wtedy na zrobienie jakiejś fajnej animacji czekania na połączenie/loadingu coś za coś :P Postaram się niedługo zrobić temat i umieścić moje wypociny, jak dopracuje. Zrobiłem łączenie się z serverem przez clienta + czat który się koloruje według ustawień graczy. Testowałem tylko z 3 osobami na raz.
  23. Za miesiąc pewnie screen z room editora tak strzelam :P
×
×
  • Dodaj nową pozycję...