NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: Machr na GameMaker - Malování

V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Zdeněk Pavlátka:20.4.2015 20:02

Je tu dlouho žádaný machr na GM :)

GameMaker je sice primárně určen k tvorbě her, ale dá se v něm vytvořit spousta jiných skvělých věcí. Vaším úkolem bude vytvořit jednoduché malování. Musí v něm být možné načítat obrázky (a samozřejmě tvořit nové), upravovat je a ukládat. Z úprav by tam měla být tužka, různě tlusté štětce a základní tvary (obdélník, elipsa). Hodnotit budu jak funkčnost, tak kód.

Pozn.: snažte se používat co nejméně ikonek, budou za to plusové body

Pozn. 2: placky za GM nemám, vítěz si bude muset vybrat jinou (leda že by je David Hartinger pořídil)

Pro jakékoli dotazy je dost místa v komentářích.

Čas si dáme do neděle 26.4.2015 do 24:00.

Kompletní pravidla soutěží: http://www.itnetwork.cz/…outezi-machr

Odpovědět
20.4.2015 20:02
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Vadim Kablukov
Tvůrce
Avatar
Odpovídá na Zdeněk Pavlátka
Vadim Kablukov:20.4.2015 20:27

Když je Construct skoro to samé, můžu to zkusit v něm?

Nahoru Odpovědět
20.4.2015 20:27
Oheň je přítel, ne sluha
Avatar
Nahoru Odpovědět
20.4.2015 20:54
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Neaktivní uživatel:21.4.2015 10:33

Potvrzuji účast :)

Nahoru Odpovědět
21.4.2015 10:33
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:21.4.2015 10:35

Ještě dva dotazy:

  1. V názvu je GM, ale předpokládám, že GMS není problém.
  2. Použití .dll knihoven taktéž není problém?
Nahoru Odpovědět
21.4.2015 10:35
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
TomBen:21.4.2015 13:55

Ale tohle je zajímavé. 8-)
Game Maker Studio se bez DLL na takový úkol prakticky vůbec nehodí, ale pokud se DLL povolí, tak zas od určitého procenta kódu to přestává být Machr na GM a taky je otázka, jestli půjde o vlastní nebo DLL z netu, že?

Nahoru Odpovědět
21.4.2015 13:55
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Odpovídá na TomBen
Neaktivní uživatel:21.4.2015 13:57

No já bych vsadil na grid.dll
Pavlátka stejně psal, že placky na GM nejsou tak si můžeme vybrat placku na C++ ;)

Ps: Účastníš se taky?

Nahoru Odpovědět
21.4.2015 13:57
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
TomBen:21.4.2015 14:19

Nezúčastním. Ze zmíněného časového rozsahu bych tomu nechtěl věnovat víc než půlden. Ne, že bych za půlden nenapsal malovátko, ale bylo by fádní a slabé. Určitě by mě taková práce netěšila.

Editováno 21.4.2015 14:21
Nahoru Odpovědět
21.4.2015 14:19
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:21.4.2015 16:07

Vlastní dll použít můžeš, GMS problém není.

Nahoru Odpovědět
21.4.2015 16:07
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:21.4.2015 16:26

Dobře, děkuji za rychlou odpověď.

Nahoru Odpovědět
21.4.2015 16:26
Neaktivní uživatelský účet
Avatar
Lukáš Hornych
Tvůrce
Avatar
Odpovídá na Zdeněk Pavlátka
Lukáš Hornych:21.4.2015 22:47

Vzhledem k tomu, že je to machr na GM neměl by kód být 100% v GM? Já teda DLL nepoužívám takže nevím jak moc můžou zasáhnout do kódu, ale i tak to něco přidá.

Editováno 21.4.2015 22:47
 
Nahoru Odpovědět
21.4.2015 22:47
Avatar
Odpovídá na Lukáš Hornych
Neaktivní uživatel:22.4.2015 0:17

No tak .dll knihovny naprosto mohou změnit a posunout hranice GM, pokud ovládáš C++ / C, můžeš si sepsat Knihovnu vlastní. Já už mám svojí skoro sepsanou, chybí mi jen dopsat podporu 3d polí v GM, abych je nemusel konvertovat vnitřně :)

Nahoru Odpovědět
22.4.2015 0:17
Neaktivní uživatelský účet
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 1:10

Mimochodem, úloha je bez .dll knihoven IMHO (možná se pletu) v GM8 neřešitelná (ukládání a načítání). V GMS řešení existuje.

Nahoru Odpovědět
22.4.2015 1:10
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:22.4.2015 4:57

No, blížím se ke konci. Podařilo se mi spatlat něco, co se tváří jako malování.
Funkce:

Výběr barvy z plné palety, dynamická velikost štětců, natavení alfa kanálu (aditivní míchání barev), různé barvy štětců a pozadí, ukládání a načítání, různé druhy nástrojů (právě implementuji). Taktéž jsem dokončil svojí "jednoduchou" cpp knihovnu pro podporu nástrojů jako "výplň". Plánuji ještě přidat nějaké filtry a efekty s obrázkem, každopádně potěšte se screenem:

Editováno 22.4.2015 4:57
Nahoru Odpovědět
22.4.2015 4:57
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:22.4.2015 9:23

Bez dll to není žádný problém GM umí načítat a ukládat obrázky (Nevím jaké formáty přesně, pracoval jsem jen s png). Už jsem s tím několikrát pracoval.

A mimochodem, výtvory s dll budu hodnotit přísněji.

Nahoru Odpovědět
22.4.2015 9:23
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 10:09

To ano, ale v GM8 nemám přístup k application_sur­face(), tedy bych při ukládání vždy ukládal jen poslední vrstvu, neměl bych je jak sjednotit. Samozřejmě vím, že se dají ukládat a načítat obrázky, problémem je následné přidání načteného do existujícího surface.

Vše uvedené je IMHO, s reálnou možností, že se pletu.

PS: Psal jsi, že použití vlastních knihoven by neměl být problém, proč to bereš jako mínus a ne plus? Já ji tam samozřejmě nemusím dávat, (ale tu plechovku asi neudělám), navíc toto nebylo v původní odpovědi na mojí otázku řečeno...
Přijde mi škoda tří hodin času, věnovaných psaní knihovny v C++...

Editováno 22.4.2015 10:13
Nahoru Odpovědět
22.4.2015 10:09
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:22.4.2015 10:31
  1. Přidat obrazek do surface: co takhle ho tam vykreslit?
  2. Proč je to mínus? Je to machr na GM, ne na C/C++. Ale pokud jí použiješ např. na výplň (plechovku), což by v GM byl asi problém (co se týče výkonu), mínus to nebude.
Nahoru Odpovědět
22.4.2015 10:31
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 10:44

No tak od toho účelu ji tam mám, psal jsem doslovně:

"Taktéž jsem dokončil svojí "jednoduchou" cpp knihovnu pro podporu nástrojů jako "výplň". "

No tak jsem rád, že se vše vyjasnilo.

Nahoru Odpovědět
22.4.2015 10:44
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:22.4.2015 11:02

Jo a GM8 obsahuje funkci na uložení libovolné části okna do souboru (jako obrázek).

Nahoru Odpovědět
22.4.2015 11:02
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 11:36

Ano, to vím.

PS: GMS taky, stačí modifikovat:

screen_save();
Editováno 22.4.2015 11:37
Nahoru Odpovědět
22.4.2015 11:36
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:22.4.2015 17:59

Nemohl jsem si pomoci a musím Vám ukázat tuto fotku z vývoje.
Made my day.

Moje "aplikace" nově obsahuje možnost kreslit velmi jednoduché "3d tělesa", na screenu je asi nejpraktičtější využití:

Nahoru Odpovědět
22.4.2015 17:59
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:22.4.2015 19:05

Kde je to 3D těleso :D?

Nahoru Odpovědět
22.4.2015 19:05
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Neaktivní uživatel:22.4.2015 19:16

No to je ten kruh uprostřed...
berte to s nadsázkou, nechci vyvinout další fádní malování.

Pro Pavlátka:

Použití poněkud explicitního slovníku není problém?
Pro oživení atmosféry...

Nahoru Odpovědět
22.4.2015 19:16
Neaktivní uživatelský účet
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:22.4.2015 19:21

Co myslíš explicitním slovníkem?

Nahoru Odpovědět
22.4.2015 19:21
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 19:30

Konkrétně výrazy lidově označující genitálie (v omezené a snad vtipné míře),
dále pixel-art obrázky s podobnou tématikou (nezobrazují lidi, ani jiné, pouze takzvaný "dickbutt")

Přišel mi zajímavý nápad vytvoření "malování prostého lidu".

Nahoru Odpovědět
22.4.2015 19:30
Neaktivní uživatelský účet
Avatar
Odpovídá na Zdeněk Pavlátka
Neaktivní uživatel:22.4.2015 19:31

samozřejmě pokud Ti to nebude připadat dostatečně korektní a v souladu s pravidly, budu to plně akceptovat.

Nahoru Odpovědět
22.4.2015 19:31
Neaktivní uživatelský účet
Avatar
Nahoru Odpovědět
22.4.2015 19:37
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Davemal
Člen
Avatar
Davemal:22.4.2015 22:08

Zrovna takový špatný termín :( .

 
Nahoru Odpovědět
22.4.2015 22:08
Avatar
Druid
Tvůrce
Avatar
Druid:22.4.2015 22:39

Tak jsem taky něco začal. Ale mám problém s tím jak řešit ukládání. Protože Studio jede sandboxově, všechny soubory samy lezou do appdata.

Nahoru Odpovědět
22.4.2015 22:39
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Odpovídá na Druid
Zdeněk Pavlátka:23.4.2015 16:32

Je tam funkce get_save_filename pro zobrazení formuláře na výběr lokace - http://docs.yoyogames.com/…ilename.html

Nahoru Odpovědět
23.4.2015 16:32
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Druid
Tvůrce
Avatar
Odpovídá na Zdeněk Pavlátka
Druid:23.4.2015 16:36

To je... Velice užitečná informace! Dík zlato.

Nahoru Odpovědět
23.4.2015 16:36
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Odpovídá na Druid
Neaktivní uživatel:23.4.2015 17:12

Ale nefunguje...

Ozkoušeno, už včera...

Nahoru Odpovědět
23.4.2015 17:12
Neaktivní uživatelský účet
Avatar
Druid
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Druid:23.4.2015 17:16

Tak to asi děláš něco špatně. Mě to funguje celkem dobře.

Nahoru Odpovědět
23.4.2015 17:16
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:23.4.2015 17:27

Mě vždy fungovala, jak v GM8, tak v GMS.

Nahoru Odpovědět
23.4.2015 17:27
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Druid
Neaktivní uživatel:23.4.2015 17:47

Hm.. mě asi ne a dělám to dobře, dokud s tím ukládám/načítám z sandboxu jede mi to.

Nahoru Odpovědět
23.4.2015 17:47
Neaktivní uživatelský účet
Avatar
Nahoru Odpovědět
23.4.2015 17:49
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Neaktivní uživatel:23.4.2015 17:56

Win 8.1

Nahoru Odpovědět
23.4.2015 17:56
Neaktivní uživatelský účet
Avatar
Druid
Tvůrce
Avatar
Druid:23.4.2015 18:03

Nevím zda to dodělám, ale prozatím už mám ukládání i nahrávání i kreslení obrázků... http://puu.sh/…3c338fc9.png Jedinné co chybí jsou typy štětců a gui.

Zatím to pohání 1 objekt, 2 skripty (co nejsou potřeba, ale je hezčí mít místo deseti řádků jen " save_image(); " :D a jedno defaultní prázdné pozadí. Jedu bez DLL a neplánuji je použít (mimo jiné proto, že to neumím :D)

Nahoru Odpovědět
23.4.2015 18:03
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Odpovídá na Neaktivní uživatel
Zdeněk Pavlátka:23.4.2015 18:06

Ty mam taky... Tak to nevim, čim by to mohlo bejt. Pošli mi do PM kód s tím get_save_filename.

Nahoru Odpovědět
23.4.2015 18:06
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Druid
Neaktivní uživatel:23.4.2015 18:16

já jsem se v rámci solidarity rozhodl svoje (i když hotové :( ) .dll nepoužít.
Nechci tady vzbudit debatu jestli je to fair play, atd...

Ps: V co nejbližší po vyhodnocení sem přidám zdroják svého řešení.
Nechť je mé malování open-source. :)

Editováno 23.4.2015 18:20
Nahoru Odpovědět
23.4.2015 18:16
Neaktivní uživatelský účet
Avatar
Odpovídá na Druid
Neaktivní uživatel:23.4.2015 18:27

Jinak to moje pohání taktéž jeden objekt, jen skripty už mám 4 a asi jich bude více.

Nahoru Odpovědět
23.4.2015 18:27
Neaktivní uživatelský účet
Avatar
Druid
Tvůrce
Avatar
Druid:23.4.2015 21:34

Hahaha! Tak barvy mám taky pořešený! http://puu.sh/…dc7759fb.png

Nahoru Odpovědět
23.4.2015 21:34
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Druid
Tvůrce
Avatar
Druid:24.4.2015 15:17

Hm, to tu docela spamuju co? :D Ale už finišuju. Dal jsem tomu jen pár hodinek tak nečekejte kdoví co.

http://puu.sh/…f780cf3c.png

Nahoru Odpovědět
24.4.2015 15:17
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Druid
Tvůrce
Avatar
Druid:24.4.2015 17:29

Tak mám hotovo! Stahtujte zde http://www.games.drujduv.net/Druid.zip

Nahoru Odpovědět
24.4.2015 17:29
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Odpovídá na Druid
Neaktivní uživatel:24.4.2015 18:28

Tak odzkoušeno na mém pc a nefunguje ukládání/načítání, po nakouknutí do zdrojáku zjištěno, že je syntax správná.
Edit: Mám win 8 ne 8.1 ... nedávno jsem prováděl továr a když jsem sem psal neuvědomil jsem si to. Tzn. na win 8 nefunkční. Chyba čistě na straně GMS.

Nahoru Odpovědět
24.4.2015 18:28
Neaktivní uživatelský účet
Avatar
Neaktivní uživatel:24.4.2015 18:39

Tak další screen na mojí aktuální verzi:
Funkce jsou snad patrné ze screenu

Nahoru Odpovědět
24.4.2015 18:39
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
TomBen:24.4.2015 19:49

Oboje zatím vypadá dost bídně, pánové. :`

Druidovo kreslidlo vypadá, že by mohlo být hezky rozvržené, kdyby se mi vešlo na obrazovku notebooku ( kousíček chybí ). Jinak je stejně vždycky lepší fullscreen painting s minimalistickou lištou nebo ideálně zcela zajížděcí tools. Líbí se mi jednoduchá, ale výstižná ikona ( pokud je to druidova práce... ). Nástroje jsou ovšem úplná nouze. Program neumí průhlednost, undo ani o 1 krok, selekci a práci s ní, základní tranformace ( zrcadlo, otočení o 90 ), nic s barvami ( alespoň invert a BW mohly být ). O vrstách, kanálech, animaci, slušné barevné paletě, barevných prostorech ani nemluvím. Tužka má pevnou velikost, štětce neumí rozostřený okraj ( pouze sází fleky ). Tvarové nástroje se po použití vypnou - nesmysl.

Kocour sice ještě nemá hotovo, ale vypadá, že to bude podobně špatné.

PS: Přihlásil se kromě těch dvou ještě někdo?

Editováno 24.4.2015 19:50
Nahoru Odpovědět
24.4.2015 19:49
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Lukáš Hornych
Tvůrce
Avatar
Odpovídá na TomBen
Lukáš Hornych:24.4.2015 19:53

Já to zkouším.

 
Nahoru Odpovědět
24.4.2015 19:53
Avatar
Odpovídá na TomBen
Neaktivní uživatel:24.4.2015 20:36

Tak snad aspoň tu barevnou paletu mám....

Nahoru Odpovědět
24.4.2015 20:36
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
TomBen:24.4.2015 21:02

Měl bys tam mít vzorky. Myslíš, že někoho bude bavit furt jezdit po nějaké plošce? Ta je dobrá, když potřebuješ opravdu specifický odstín a to jen jednou. Většinou chceš mít pár dobrých barev po ruce. Barvy je pak dobré mít možnost přepnout z default na webové, tiskové, windowsí a custom.

Editováno 24.4.2015 21:03
Nahoru Odpovědět
24.4.2015 21:02
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 50 zpráv z 102.