-
Postów
2 729 -
Dołączył
-
Ostatnia wizyta
-
Wygrane w rankingu
44
Typ zawartości
Profile
Forum
Wydarzenia
Treść opublikowana przez Konrad-GM
-
Nawet GameMaker ma własny "mainloop". Bo chyba o to chodzi w Game Engine'ach. Modding a'la Unity czy UDK jest ok... :P
-
Tak, Draw GUI jest od rysowania HUDa i innych elementów niezależnych od zmian perspektywy ani pozycji 'kamery'. Zatem niezależnie od view_xview,view_yview, w evencie Draw GUI rysuje się pod X,Y przyjmując 0,0 jako lewy-górny róg ekranu. GML draw_text(5, 5, string(health));
-
Nie no, ta gra to kozacko się zapowiada... Pro wręcz. :D
-
Nie lubię tego rozwiązania od twórców borlandowego "conio". Bo nie indeksuje pozycji kursora od '0', co dla języka C/C++/etc jest rzeczą naturalną i powszechnie stosowaną, odwrotną co do Pascalowego '1'.
-
"Delta = %\lf" - Kompilator C++ ma tendencje aby backslashe w łańcuchach zmieniać na inne znaki względem tego układu: http://msdn.microsoft.com/en-us/library/6aw8xdf2.aspx
-
Eclipse moim zdaniem do C++ nijak się nie nadaje. Jest pamięciożerną kobyłą, można niekiedy się zniechęcić do niego. Code::Blocks (polecam nightly builds), tak jak Dev-C++, jest lekki i oba są zaopatrzone w kompilator MinGW (do C::B nightly builds trzeba ściągać osobno). Visual co prawda też po instalacji nie potrzebuje dodatkowego oprogramowania, ale chyba twórcy bardziej celują w technologię .NET i C# zatem różnice między Visual C# a Visual C++ są spore. :)
-
puNowaTablica = NULL; delete[] puNowaTablica; Wywal to całkiem. O,o Usuwanie wskaźnika na 'nullptr' nie daje żadnego efektu. Więc ta część kodu w ogóle nie jest potrzebna.
-
Przybrałeś zły sposób na iterowanie po danych w tablicy, konkretnie chodzi o: puTablica[uIndeks1 * uIndeks2]. Tak nie może być. :) Jeżeli chcesz użyć liniowej metody dostępu do adresu pamięci w postaci 2-wymiarowej tablicy blablabla, musisz daną pozycję Y pomnożyć przez "szerokość" tablicy aby wyznaczyć wiersz, i dodać "przejście" X po komórkach: puTablica[uIndeksY*muRozmiarX + uIndeksX] Proponuję zmienić konwencję kodowania, gdyż ciężko "to" się czyta... To taka moja luźna propozycja. :) Tak samo jak zasada ze zmiennymi 'n' (ilość), jak i 'i' (pozycja). Z X/Y-ami postępuje się podobnie. X-y podawaj na początku argumentów, Y jako drugi. #EDIT: Proponuję abyś jeszcze raz zbadał metodę cInt2dArray::ChangeRozmiar, możesz być niemile zaskoczony. Konkretnie chodzi o delete[] puNowaTablica;
-
Główny problem, przez który Twój kod nie działa to: Nie ustalasz wartości w tablicy, z tego co widzę nie używasz (nigdzie) metody cIntArray::SetWartosc. Ale zauważyłem kilka niedociągnięć... Domyślny konstruktor nie tworzy tablicy intów, mimo że mDOMYSLNY jest równy 5.
-
Mi osobiście podoba się szachownica(2) :)
-
8D Gratuluję sukcesów z grą ;) Czekam na następną część, powodzenia!
-
Cóż, zagrałem w każdą część, i przyznam że każdy epizod trzyma poziom :) Ciekawa historia, wciągająca fabuła. W najnowszej części Memories bardzo podoba mi się motyw z rysunkami. Podziwiam za pomysł, cała seria zdecydowanie zasługuje na 5/5 ;)
-
Wszystko fajnie i wgl. Ale ogień który wydaje pocisk to chyba standardowy efekt GMa, może coś bardziej "rozpixelowanego" tam wstawić można? :P
-
Ładnie opisane znajduje się to na MSDN: http://msdn.microsoft.com/en-us/library/wi...5(v=vs.85).aspx http://msdn.microsoft.com/en-us/library/wi...1(v=vs.85).aspx Zapewne nie ustawiasz odpowiedniego trybu konsoli.
-
Źródła tej "biblioteki" są dostępne. Wykorzystuje WinAPI, którego dokumentację znajdziesz pod tym linkiem. Forum jest do wymiany swoich spostrzeżeń jak i wiedzy. Gdybyś miał z czymś problem, pisz na forum. W miarę możliwości nie tylko ja będę mógł Ci pomóc. ;) Polecam zapoznać się z takową funkcją: WriteConsoleOutput
-
GM8 raczej obsługuje DLLe, zatem powinno zadziałać ;) Możesz też przeszukać tę bibliotekę: http://www.gmtoolbox.com/
-
https://github.com/konrad92/libconsole Nie jest to jakoś szczególnie rozbudowana biblioteka - raczej zabawka. Możesz zmienić rozmiar konsoli poprzez: void ConsoleSize( unsigned short width, unsigned short height ) const { SMALL_RECT windowSize = { 0, 0, width - 1, height - 1, }; SetConsoleWindowInfo( stdOutputHandle, true, &windowSize ); SetConsoleScreenBufferSize( stdOutputHandle, *((COORD*)&width) ); // show/hide cursor CONSOLE_CURSOR_INFO curInfo = { 100, !m_hideCursor }; SetConsoleCursorInfo( stdOutputHandle, &curInfo ); } A podział, obiekty i "okienka" to nic innego jak generowanie interfejsu przez wyjście. Np. żeby zmienić pozycję kursora: unsigned short x = 0, y = 0; SetConsoleCursorPosition( stdOutputHandle, *((COORD*)&x) ); I nie zapomnij o jednym... HANDLE stdOutputHandle = GetStdHandle( STD_OUTPUT_HANDLE ); Przed dokonywaniem zmian na konsoli potrzebujemy wskaźnika na jego wyjście ;p
-
Mam nadzieję że wiesz co to znaczy LOD? Generuj teren "dynamicznie" - im dalsza część siatki terenu tym rozleglejsze plane'y. A modele stwórz w kilku poziomach LOD, i wywołaj rysowanie odpowiedniego np. względem odległości kamery od obiektu. Możesz też zainteresować się Ultimate3D. Fully automatic generation of levels of detail
-
Ważne że w ogóle wygląda ;D Grafik ze mnie marny, także raczej cudów się nie należało spodziewać ;p
-
Mockup do mojego projektu: Gra w planach, ma być to nietypowy TD.
-
O Borze... :) class A { A(int v) { value = v; } int value; }; class B : public A { B() : A(10) { } }; Twój kod YXE tworzy nową instancję klasy A, sorry bro.
-
Wstawiając jakąś grę na jakąkolwiek platformę ciesząc japę a później tylko narzekać - w sumie niewiele to zdziała. Nie ważne jaka by nie była ta gra, rzadkością jest "samoistne" wypłynięcie czegokolwiek. Nie jestem specem od marketingu (:)), ale chyba każdy wie że reklama to podstawa. :)
-
Tak, wersja Pro z dokupionym exportem na androida. A tak poza tym to Java + Android SDK or Cpp + Android NDK :)
-
[JS/HTML5] Skalowanie elementu <canvas>
Konrad-GM odpowiedział(a) na Konrad-GM temat w HTML, PHP, mySQL, JavaScript
Ok, rozwiązałem problem. Zmieniłem "createPattern>fillStyle>fillRect" na "drawImage". Już jest ok :) Dzięki temu: http://vaughnroyko.com/jsfiddle/nearest-neighbor.html presentViaDrawImage: function(canvas) { var ctx = canvas.getContext("2d"); ctx.scale(canvas.width/this.width, canvas.height/this.height); ctx.webkitImageSmoothingEnabled = ctx.mozImageSmoothingEnabled = ctx.msImageSmoothingEnabled = ctx.oImageSmoothingEnabled = ctx.imageSmoothingEnabled = false; ctx.drawImage(this.canvas, 0, 0); }