game maker
Gebruikersnaam:
Wachtwoord:
Home Info Forums Help
Welkom, Gast. Alsjeblieft inloggen of registreren.
+  Forums
|-+  Werken met Game Maker
| |-+  Gevorderden (Moderators: Erik Leppen, ericlegomeer, BlueMoonProductions)
| | |-+  Textures van 3D model inladen
Pagina's: [1]
« vorige volgende »
Print
Advertenties

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Gepost op: 1 September 2014, 20:01:34 »

Ik wist niet echt waar ik het moest plaatsen dus als het niet goed is (moderators), voel je vrij het te verplaatsen Knipoog

Mijn vraag is als volgend:
Ik gebruik op dit moment Google Sketchup voor het maken van 3D modellen. Na google sketchup gaat het model naar uv mapper classic en dan naar Vmodeler. Het probleem is alleen dat uvmaps unwrappen echt een rotwerkje is..
In google sketchup zit een functie genaamt texturing, waar je elke face in het programma zelf een texture kan geven, of 1 textures over geselecteerde driehoeken in het programma zelf kan zetten. Klinkt ingewikkeld, maar het is verschrikkelijk handig, snel en simpel. Het probleem is dat er zover ik weet geen enkele manier is om die textures te exporteren als een texture map (zoals een uv-map zou zijn, kant en klaar voor gm). Ain't that stupid? Ik heb me kapot gezocht naar resultaten zoals: "Google sketchup export materials to texture map" maar ik kon niks vinden.. Dus ik vroeg me af, hoe moet ik dit nu gaan aanpakken?
Mvg! Knipoog


Naar boven Gelogd

StefanJanssen
Gebruiker


Offline Offline

Berichten: 5211

Was StefannafetS


WWW
« Antwoord #1 Gepost op: 1 September 2014, 20:14:26 »

Zover ik weet is dit niet mogelijk. Model Creator (van matrebatre) heeft een hele makkelijke texturemap functie.

EDIT:
*matrebatre is maarten baert btw (Maarten waarom heb je je naam veranderd? ik kan er niet aan wennen)


Begrijp je iets niet in een uitleg van een gebruiker? Bekijk eerst de helpfile voor je iets vraagt
Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #2 Gepost op: 1 September 2014, 20:17:14 »

Haha dankjewel voor je reactie Gemoedelijk
Ik zal gelijk even ernaar kijken


Naar boven Gelogd

StefanJanssen
Gebruiker


Offline Offline

Berichten: 5211

Was StefannafetS


WWW
« Antwoord #3 Gepost op: 1 September 2014, 20:21:02 »

Haha dankjewel voor je reactie Gemoedelijk
Ik zal gelijk even ernaar kijken
Het maakt het meteen zo dat je het met GM kan inladen Tong (ik heb geen flauw idee of je .obj ofzo kan importeren idk)


Begrijp je iets niet in een uitleg van een gebruiker? Bekijk eerst de helpfile voor je iets vraagt
Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #4 Gepost op: 1 September 2014, 20:28:15 »

Het maakt het meteen zo dat je het met GM kan inladen Tong (ik heb geen flauw idee of je .obj ofzo kan importeren idk)
Haha, ik weet denk ik al hoe t werkt Grijns, maar de interface werkt van geen meter Treurig
Ik weet hoe t werkt, want het lukt wel, maar ik kan niet ver genoeg uitzoomen om de hele map te zien.. Treurig
Achja, misschien moet ik maar een custom programma schrijven die een 3D model inlaad + de materials, en dan een UV-map uitspuugt, volledig klaargemaakt..
Dit wordt hell.


Naar boven Gelogd

StefanJanssen
Gebruiker


Offline Offline

Berichten: 5211

Was StefannafetS


WWW
« Antwoord #5 Gepost op: 1 September 2014, 20:32:55 »

Haha, ik weet denk ik al hoe t werkt Grijns, maar de interface werkt van geen meter Treurig
Ik weet hoe t werkt, want het lukt wel, maar ik kan niet ver genoeg uitzoomen om de hele map te zien.. Treurig
Achja, misschien moet ik maar een custom programma schrijven die een 3D model inlaad + de materials, en dan een UV-map uitspuugt, volledig klaargemaakt..
Dit wordt hell.
Het programma is open source meen ik me te herrinneren dus je kan daar gewoon aanpassingen in maken Tong
En maarten programmeert vast wel heel logisch en duidelijk.


Begrijp je iets niet in een uitleg van een gebruiker? Bekijk eerst de helpfile voor je iets vraagt
Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #6 Gepost op: 1 September 2014, 20:34:30 »

Het programma is open source meen ik me te herrinneren dus je kan daar gewoon aanpassingen in maken Tong
En maarten programmeert vast wel heel logisch en duidelijk.
Haha *Laadt gamemaker*...

Poep.


*klikt langzaam op visual studio.......*

Edit:

Nou.. hoe werkt een .obj bestand met textures erin...
*googled*
Geen materials?
Oh wacht
*Googled .MTL*
*Kan niks vinden*
Dubbel poep.

Er is geen eens een wikipedia ervoor. alleen over .obj
Edit edit: Dit is het beste, en het is nog steeds vreselijk..

Ik heb hier geen zin meer in, ik doe het wel morgen nadat ik AVGN: THE MOVIE heb gekocht en gekeken (WOOT ZO EXCITED! MORGEN UITTT!)

Zo oke na een tijdje ben ik volledig klaar met het uitvogelen van de .OBJ en .MTL. Het is best simpel als je weet hoe, maar ingewikkeld het uit te vogelen. Ik ben nu begonnen met een programma schijven in GML (gm: Studio) die een .OBJ bestand kan inladen met de texture coördinaten, en vervolgens kan converteren in een D3D model. De texture coördinaten zullen op willekeurige plaatsen worden geplaatst om alles makkelijker te maken, en dus zal de texture map vaak onleesbaar worden voor het menselijke oog, maar op de computer zal geen enkele vertex gescaled worden, en dus het beste resultaat voor games.
Misschien zal een plugin-support ook wel leuk zijn Knipoog

« Laatste verandering: 2 September 2014, 15:18:30 door R1ckx »

Naar boven Gelogd

Laloeka
Gebruiker


Offline Offline

Berichten: 2551


WWW
« Antwoord #7 Gepost op: 2 September 2014, 16:42:43 »

Ik hoop dat je aaneen grenzende vertices ook tegen elkaar zet in de texturemap? Anders ga je de texturemaps enorm inefficiënt maken (je kunt de verschillende vertices niet tegen elkaar zetten want interpolatie zorgt dan dat elk driehoekje een lelijk randje krijgt van de andere vertices er omheen. Je zult dus een ruimte tussen elke vertex moeten laten, en dat is een hele hoop onnodige texture-data. Verder zal de interpolatie van de vertices niet doorlopen over de vertex-grens, wat best storend kan zijn.

Het kan best werken, maar het is geen nette methode. Een betere methode is om een speciale tool te gebruiken om .OBJ modellen te importeren.

Model Creator heeft ook best aardige texture functies.



-------
Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #8 Gepost op: 2 September 2014, 17:27:11 »

Ik hoop dat je aaneen grenzende vertices ook tegen elkaar zet in de texturemap? Anders ga je de texturemaps enorm inefficiënt maken (je kunt de verschillende vertices niet tegen elkaar zetten want interpolatie zorgt dan dat elk driehoekje een lelijk randje krijgt van de andere vertices er omheen. Je zult dus een ruimte tussen elke vertex moeten laten, en dat is een hele hoop onnodige texture-data. Verder zal de interpolatie van de vertices niet doorlopen over de vertex-grens, wat best storend kan zijn.

Het kan best werken, maar het is geen nette methode. Een betere methode is om een speciale tool te gebruiken om .OBJ modellen te importeren.

Model Creator heeft ook best aardige texture functies.
Hm.....
Ik zal kijken.. ik weet nog niet percies hoe ik het moet toepassen maar ik zal mijn best doen zo functie toe te passen. Als een vertex vervormt moet worden, dan plaats ik hem wel apart met een uitgetrokken rand, want de bedoeling is juist geen transformed textures. Ik zal mijn best doen..

Ik heb een simpele .OBJ file importer gecreerd. Het werkt prachtig.... Zolang het bestandsformaat zo is:
Code:
v -60.1886 -2.73825 -0.00002
v -60.8227 -3.20603 -0.00002
v -61.4253 -3.51247 -0.00002
v -61.8261 -3.63791 -0.00002
v -62.2461 -3.71317 -0.00002
v -62.6854 -3.73825 -0.00002
v -63.1092 -3.71619 -0.00002
v -63.4918 -3.65 -0.00002
v -63.8332 -3.53969 -0.00002
v -64.1334 -3.38525 -0.00002
v -64.3925 -3.18669 -0.00002
v -64.6071 -2.95388 -0.00002
v -64.774 -2.69669 -0.00002
v -64.8932 -2.41513 -0.00002
v -64.9647 -2.10919 -0.00002
v -64.9886 -1.77888 -0.00002
v -64.9635 -1.45318 -0.00002
v -64.8882 -1.14693 -0.00002
v -64.7628 -0.86013 -0.00002
v -64.5968 -0.60128 -0.00002
v -64.3999 -0.37888 -0.00002
v -64.1722 -0.19294 -0.00002
v -63.7841 0.02815 -0.00002
v -63.3495 0.18831 -0.00002
v -62.3339 0.36175 -0.00002
v -61.1319 0.54534 -0.00002
v -60.2948 0.76175 -0.00002
etc...
maar google sketchup exporteert zo:
Code:
usemtl FrontColor
v 0 1.11 0
vt 0 43.7008
vn 0 0 1
v 0 0 0
vt 0 0
v 1.79602 0 0
vt 70.7094 0
v 1.79602 1.11 0
vt 70.7094 43.7008
f 1/1/1 2/2/1 3/3/1 4/4/1

vn 1 0 0
vt 43.7008 0
v 0 1.11 2.34
vt 43.7008 92.126
v 0 0 2.34
vt 0 92.126
f 2/2/2 1/5/2 5/6/2 6/7/2

v 1.79602 1.11 2.34
vt 70.7094 92.126
vn 2.16002e-034 -1 -1.22407e-016
v 1.76542 1.11 2.57242
vt 69.5047 101.276
v 1.67571 1.11 2.789
vt 65.9727 109.803
v 1.533 1.11 2.97499
vt 60.3542 117.126
v 1.34701 1.11 3.1177
vt 53.032 122.744
v 1.13043 1.11 3.20741
vt 44.5051 126.276
v 0.898009 1.11 3.23801
vt 35.3547 127.481
etc...
Technisch gezien zou je gewoon de "V" coordinaten eruit kunnen vissen maar om de een of anderen reden krijg je dan een erg misvormd, onherstelbare berg polygons..

Vinden jullie dit ook een heel mooi mens?

Edit: Als ik een bestand van sketchup door UVMAPPER laat lopen komt er het zelfde uit:
Code:
# file generated by UVMapper
# NumVerts/NumTVerts/NumVNormals/NumFacets   30/68/18/17
# NumGroups/NumMaterials/NumRegions   1/1/0
# x/y/color/ppu   512/480/0/50.00000000

v  0.00000000  0.00000000 -1.11000001
v  0.00000000  0.00000000 -0.00000000
v  1.79602003  0.00000000 -0.00000000
v  1.79602003  0.00000000 -1.11000001
v  0.00000000  2.33999991 -1.11000001
v  0.00000000  2.33999991 -0.00000000
v  1.79602003  2.33999991 -1.11000001
v  1.76541996  2.57241988 -1.11000001
v  1.67570996  2.78900003 -1.11000001
v  1.53299999  2.97498989 -1.11000001
v  1.34701002  3.11770010 -1.11000001
v  1.13042998  3.20741010 -1.11000001
v  0.89800900  3.23800993 -1.11000001
v  0.66558701  3.20741010 -1.11000001
v  0.44900399  3.11770010 -1.11000001
v  0.26302099  2.97498989 -1.11000001
v  0.12031000  2.78900003 -1.11000001
v  0.03059890  2.57241988 -1.11000001
Maar nog steeds een raar onherstelbaar model.. ik merk wel op dat alles plat wordt gemaakt, alsof een dimentie ontbreekt..

EDIT EDIT: Vals alarm, probleem gevonden, google sketchup doet leuk door een dubbele spatie te plaatsen tussen de V en de coordinaten.. URG!

EDIT EDIT EDIT:

Dit is het eerste deel af Gemoedelijk Een 3D model viewer met .obj importer.(de camera draait rond de Z as, je kan inzoomen, uitzoomen en je Z veranderen). De camera wijst altijd naar 0,0,0. Nu nog een model verplaats functie toevoegen en een .OBJ fixer (orientatie). Vervolgende de texture functies en de export.

4X EDIT:
Dit is de meest recente versie:

« Laatste verandering: 2 September 2014, 21:06:00 door R1ckx »

Naar boven Gelogd

Maarten Baert
Forumbeheerder


Offline Offline

Berichten: 4942

Gelieve quote te gebruiken als je PMs beantwoordt.


WWW
« Antwoord #9 Gepost op: 2 September 2014, 21:38:48 »

Het programma is open source meen ik me te herrinneren dus je kan daar gewoon aanpassingen in maken Tong
En maarten programmeert vast wel heel logisch en duidelijk.
Haha, nu misschien wel, maar Model Creator v5 heb ik lang geleden gemaakt. Ik herinner me dat er nauwelijks commentaar in staat, veel code ge-copy-paste is van andere plaatsen, en sommige delen helemaal geen indentatie hebben Tong.

De reden dat je je model niet goed kan krijgen in Model Creator is waarschijnlijk omdat je het gewoon veel te groot hebt gemaakt. Daarmee kom je in de problemen met onder andere znear/zfar en daarom heb ik het onmogelijk gemaakt om voorbij een bepaald punt uit te zoomen. Er is bij settings een optie om een schaal in te stellen om zo grote modellen te bewerken op kleinere schaal, om dat te verhelpen.

Modellen uit Sketchup zijn voorzover ik me herinner één grote ellende. Het formaat is niet gestandaardiseerd, en de gratis versie kan niet exporteren naar andere formaten, dus je moet gebruik maken van conversietools van vaak twijfelachtige kwaliteit. Blender heeft een import-plugin voor Sketchup en een export-plugin voor OBJ, wat je dan weer kan omzetten in een GM bestand, maar bij elke conversie gaan er typisch een paar dingen fout, zoals edges die niet meer mooi samenvallen, polygons die niet goed omgezet worden in triangles enzovoort. Ik raad je echt aan om je modellen te maken in een ander programma dan Sketchup. Als je Model Creator niet geavanceerd genoeg vindt, probeer dan Blender eens.

Model Creator heeft trouwens een OBJ importeerfunctie, je kan gewoon via de 'load' knop ze inladen. De importer is niet geweldig (die van Alter Ego zou wel eens beter kunnen zijn), er is onder andere een limiet qua aantal vertices (vanwege de beperkte arraygrootte van GM), maar het is wel veel beter dan wat je nu zelf aan het schrijven bent herinner ik me. De importer kan prima overweg met v/vt/vn in eender welke volgorde.


Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #10 Gepost op: 2 September 2014, 22:03:59 »

Om eerlijk te zijn zou ik ook veel liever model creator etc willen gebruik maar er zit een proble in..
Model creator, blender, etc etc kunnen materials op faces niet omzetten in een texture map. Sterker nog, geen ENKEL programma is ervoor. Toch is er grote vraag naar..
Dit programma moet een .obj + .mtl en een paar .png bestandjes moeten kunnen omzetten naar een texture map. Vervolgens kan je het model opslaan in .gmmod, .mod, .d3d of .A3D (unieke bestandextentie van Apocalypse Engine rev 4.0 dat gelijk is aan .gmmod, maar uitgebreider, texture map erin (2 in 1) en nog steeds snel te laden.
Dusja, er zijn prima tools om texture maps te
Maken bij modellen maar er is altijd wel een polygon die gescalrd wordt. Bij deze Material2Texture wordem vertexes nooit gescaled (of allemaal) en de materials automatisch erop geplakt. Zo krijg je dus een texture met allemaal losse vierkantjes en de textures er al op Grijns


Naar boven Gelogd

Laloeka
Gebruiker


Offline Offline

Berichten: 2551


WWW
« Antwoord #11 Gepost op: 6 September 2014, 00:11:32 »

Om eerlijk te zijn zou ik ook veel liever model creator etc willen gebruik maar er zit een proble in..
Model creator, blender, etc etc kunnen materials op faces niet omzetten in een texture map. Sterker nog, geen ENKEL programma is ervoor. Toch is er grote vraag naar..

Ik denk toch echt dat dat probleem bij jou zit; GameMaker heeft geen ondersteuning voor materials. Eén texture per model, dat is alles wat je krijgt.

Ik weet van een aantal 3D programma's dat ze een feature hebben om texturemaps te exporteren of zelfs te tekenen in het programma zelf, ModelCreator heeft die optie ook (texturemap exporteren, niet tekenen).

Daarnaast kun je in ModelCreator faces een bepaalde kleur geven, wat samen met een texturemap aardig dicht bij een 'material per face' in de buurt komt.

Als je in jouw 3D programma (blender?) de texturecoordinaten goed zet kun je die met verschillende tools converteren naar een GameMaker model. ModelCreator kan dat volgens mij, en in mijn vorige post linkte ik je ook GM Alter Ego.



-------
Naar boven Gelogd

R1ckx
Gebruiker


Offline Offline

Berichten: 668

I'm a ghost, and I'm Red. Voeg me toe op steam :D


WWW
« Antwoord #12 Gepost op: 6 September 2014, 01:46:59 »

Ik weet van al die dingen maar dat komt niet in de buurt van mijn bedoeling. Mijn bedoeling is om een programma te maken die een .Obj, een .Mtl en een paar .Png/.Jpg bestanden kan omzetten in één .Obj en één .Png die in gamemaker kunnen worden geladen. Ik wil ook dat de faces op geen enkele manier gescaled worden, wat elke andere alternatief wel doet. Bovendien, het is gewoon hardstikke handig een programma te hebben (ook voor toekomstige developers) die materials kan omzetten in een single texture map zonder scaling etc. Dit zou prachtig zijn want dan kan je gewoon texturen in Google Sketchup met materials, en dan importeren in gamemaker of andere engines. Je krijgt dan betere resultaten, mooiere resultaten, de werksnelheid zal erg verbeteren en geen risico's zoals overlappende faces in de uv_map of een face die 2x zo klein is als de omringende en dus een lelijk effect geeft.


Naar boven Gelogd

Compor
Jurylid


Offline Offline

Berichten: 4662


« Antwoord #13 Gepost op: 6 September 2014, 11:00:49 »

Model creator, blender, etc etc kunnen materials op faces niet omzetten in een texture map. Sterker nog, geen ENKEL programma is ervoor. Toch is er grote vraag naar..
Dat kan wel hoor, het is een bekend idee en het heet doorgaans 'texture baking'.
YouTube: Blender-Baking Textures
Dit zou prachtig zijn want dan kan je gewoon texturen in Google Sketchup met materials, en dan importeren in gamemaker of andere engines. Je krijgt dan betere resultaten, mooiere resultaten, de werksnelheid zal erg verbeteren en geen risico's zoals overlappende faces in de uv_map of een face die 2x zo klein is als de omringende en dus een lelijk effect geeft.
Ik zou er niet te positief over denken.

• Je kan niet makkelijk een texture aanpassen. Als je bijv. het dak wilt aanpassen moet je terug naar het origineel, daar de dak-textuur aanpassen en opnieuw textures baken.

• Je kan niet makkelijk tilen. Als je een lange muur hebt moet je de bakstenen heel vaak herhalen wat de afbeelding onnodig groot maakt.

• Randen kunnen lelijk worden als aangesloten triangles niet op je UV-map aangesloten zijn.

• Je zult bijna nooit je hele bake texutre vullen, er zijn vaak ongebruikte plekken op je texture.

• Je kan ook moeilijk dynamische textures maken. Als je een texture wilt veranderen in-game, of je genereert een geanimeerde watertextuur wordt het heel lastig als je daarvoor niet een eigen texture reserveert maar het tussen andere textures moet plaatsen op één afbeelding.

Zo efficiënt is het in de meeste gevallen dus niet. Het wordt pas echt handig als je schaduwen, bounce lighting, ambient occlusion, subsurface scattering en andere GPU intensieve graphics bakt op een texture. Dan hoeft de game die niet real-time te berekenen en krijg je een realistisch effect zonder dat het de GPU belast.

Je kan texture bakes in-game vooraf genereren, dat maakt laadtijden langer.
Je kan ze ook meegeven, dan wordt het spelbestand groter.

Dit werkt wel alleen bij statische dingen zoals gebouwen, zodra er iets verandert in de positie van het licht of het object moet alles opnieuw berekend worden. Bij een mens of dier textures baken heeft dus weinig zin, daar moeten zulke effecten dynamisch gebeuren.

Ik raad dus aan om van de mogelijkheden gebruik te maken als je textures bakt, anders denk ik toch dat het makkelijker is om gewoon specifieke afbeeldingen voor specifieke textures te gebruiken.

Naar boven Gelogd

jueding
Gebruiker

Offline Offline

Berichten: 1


« Antwoord #14 Gepost op: 6 Maart 2020, 04:25:15 »

Sketchup is een makkelijke omdat het gratis is maar voor veel detail werk vind ik het niet geweldig.

Makkelijker (imho) maar minder technisch dan solid works en veel meer tutorials voor te verkrijgen zijn 3dsMAX of Maya. Ik ben zelf een Maya 3D artist dus vind dat vele male makkelijker maar omdat er veel meer tutorials van 3dsMax te vinden zijn kan je misschien makkelijker daar beginnen.
Van beide zijn studentlicences te krijgen die gratis zijn

Op m'n werk gebruik ik een tekentablet xp pent star g640 voor 3dsMAX . en het werkt echt top!

Naar boven Gelogd

Advertenties
« vorige volgende »
Pagina's: [1]
Print


Topic Informatie
0 geregistreerde leden en 1 gast bekijken dit topic.

Ga naar:  

Powered by SMF 1.1.21 | SMF © 2006-2007, Simple Machines
www.game-maker.nl © 2003-2020 Nederlandse Game Maker Community