Topic: Procedureel maken van een 3D model dmv een oude landkaart  (gelezen 49803 keer)


ExLibris

« Gepost op: 15 december 2019, 11:54:51 am »
Jacob van Deventer heeft in de 16e eeuw honderden kaarten gemaakt van dorpen en steden in de Lage Landen. Hij was heel accuraat en consequent in het maken hiervan. Een paar jaar geleden heb ik de kaart van Eindhoven(https://uurl.kbr.be/1043877) dmv Blender, Substance Painter en Unity omgezet naar een VR rondleiding. Dit was allemaal handmatig en koste veel tijd. Nu ik Blender beter begin te kennen ben ik op zoek naar een manier om deze kaarten om te zetten naar een 3D model met zo min mogelijk moeite.

Eigenlijk zou ik het model in een uur willen maken en zo veel mogelijk procedureel. Dan gaat het vooral over de niet specifieke gebouwen (dus kerken en kastelen en zo zal ik toch na moeten bouwen). Ook de ondergrond, waarvoor ik de kaart wil gebruiken, zou bijvoorbeeld procedureel roughness en normal/displacement moeten krijgen. Hiervoor kan ik de kleuren van de kaart gebruiken (blauw is water en oranje zijn huizen). Geen idee hoever ik ga komen, maar ik zie wel.


Ik wil de volgende onderdelen verder gaan verkennen:

- Shader Graph
- Object Scatter add on
- Image to plane addon

Weten jullie nog onderdelen van Blender die ik kan gebruiken hiervoor?


Kan ik dmv van de kleuren bepalen wat water is?



Object scatter voor de huizen


« Laatst bewerkt op: 15 december 2019, 11:58:02 am door ExLibris »

Offline IJp

  • *
  • Berichten: 4,387
    • Bekijk profiel
    • IJpart
« Reactie #1 Gepost op: 15 december 2019, 13:25:33 pm »
Ik weet niet of je je eigen map er in kan plaatsen maar kijk hier maar eens na.
OpenStreetMap
https://www.youtube.com/watch?v=9h3rLWPai9M

Offline IJp

  • *
  • Berichten: 4,387
    • Bekijk profiel
    • IJpart
« Laatst bewerkt op: 15 december 2019, 13:39:22 pm door ijp »

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #3 Gepost op: 20 december 2019, 12:47:21 pm »
Ik hoop dat je veel gaat laten zien van dit project. Ik moet minstens 200 jaar worden om alles te doen wat ik wil doen. Een dergelijk project staat op mijn verlanglijst om te doen, maar er zal komende tijd niets van komen. Als jij het doet, kan ik er op dioe manier toch ook nog van genieten. Veel plerzier en sterkte met dit project en als ik kan helpen dan doe ik dit, maar ik heb er weinig verstand van.

ExLibris

« Reactie #4 Gepost op: 23 januari 2020, 14:51:28 pm »
Het heeft even geduurd, maar ik ben nu echt begonnen met mijn projectje. Via Youtube heb ik een aantal voorbeelden bekeken van het bouwen van steden in Blender (dank je Ijp voor de voorbeelden!). De meeste oplossingen konden me helaas niet helpen. Een Amerikaanse stad bouwen met rechte straten en gebouwen is een stuk eenvoudiger dan onze organische dorpen en steden. Ik zal dus zelf een soort werkproces moeten verzinnen.

Om te beginnen heb ik een andere kaart van Van Deventer gebruikt dan die van Eindhoven (daar ben ik lang genoeg mee bezig geweest). Ik zocht een relatief eenvoudige kaart met meer water dan alleen rivieren. Op de website van de Koninklijke Bibliotheek van Belgiƫ (https://uurl.kbr.be/1043878) heb ik een schermafbeelding gemaakt van de kaart. Mijn uitgangspunt wordt dus een jpg afbeelding van 1430x1013 pixels groot.
 


Allereerst ga ik me bezighouden met het landschap, in een latere fase wil ik gebouwen, poorten, stadsmuren, molens en zo toe gaan voegen.

In een eerdere poging heb ik al geprobeerd om aan de hand van afbeeldingskleuren automatisch het verschillende grondgebruik te bepalen, maar dat bleek niet heel goed te werken. Als ik bijvoorbeeld alleen blauw als water zou zien en groen als land, dan wordt het geheel nogal rommelig. 

Daarom deze keer een poging gemaakt om met GIMP eenvoudige zwart/wit maps te maken. Ik ben er nog niet helemaal uit welke ik allemaal moet maken. Ik moet rekening houden met kleur, hoogte en eventueel later een mask voor plaatsen waar ik bijvoorbeeld huizen en bomen wil plaatsen. Tot nu toe heb ik de volgende gemaakt:

- Water
- Dijken
- Wegen
- Huizen
- Bebouwde kom





Vervolgens kan ik aan de slag in Blender. Binnen Blender wil ik een project maken dat eenvoudig mijn afbeeldingen omzet naar een landschap. Ik wil aan het einde eigenlijk geen gebruik meer maken van de originele kaart. In de shader editor ben ik nu bezig om mijn afbeeldingen om te zetten in base color, roughness en normal. Voorlopig werk ik nog alleen met een normal map, maar ik wil ook nog kijken of displacement een optie is. Hieronder twee maal hetzelfde shot, met en zonder de originele kaart.








In de volgende fase wil ik het landschap vullen met verschillende materialen aan de hand van mijn maps.



ExLibris

« Reactie #5 Gepost op: 23 januari 2020, 22:37:05 pm »
Vanavond nog even verder gegaan en weer wat verder gekomen...



ExLibris

« Reactie #6 Gepost op: 24 januari 2020, 22:06:29 pm »
Vanavond weer aan het klussen met mijn omgeving. Ik heb twee extra maps aangemaakt: akkerland en nat land. Dit is om verschillende textures aan te brengen en de vegetatie te bepalen. Ik heb een paar heel low poly bomen toegevoegd, die ik door middel van het particle systeem toevoeg aan delen van de kaart. Voor nu gebruik ik daar een vertex group voor, maar eigenlijk zou ik dit ook via mijn maps willen laten verlopen. Om die vertex group toe te passen heb ik mijn plane 140x100 loopcuts gegeven.

Mijn pogingen om displacement te gebruiken hadden niet het juiste resultaat. Het was niet precies genoeg, zonder het teveel te subdividen (1000x1000 +). Omdat ik het geheel zo low poly mogelijk wil houden moet ik dus een andere manier vinden om straks de huizen en gebouwen te plaatsen. In tegenstelling tot de bomen, waar de z-rotatie niet uitmaakt, kan ik hier (nog) niet een particle system inzetten. De rotatie is namelijk afhankelijk van de straat waar het huis aan ligt.

Zoals je zult begrijpen wordt de shading graph tamelijk ingewikkeld. Ik mis toch wel een aantal nodes die ik nu goed zou kunnen gebruiken. Met edge detect zou ik de oevers kunnen bepalen. Deze zit bijvoorbeeld wel in Substance Designer. Een edge detect node is wel te downloaden, maar zit niet standaard in Blender. Ik moet nog even kijken of die voldoet. Anders moet ik ook een map voor oevers maken. Ook zou een materiaal node van pas komen, om het geheel een beetje overzichtelijk te houden.

Door de bomen krijgt de scene meteen wat diepte



De graph voor de ondergrond wordt best ingewikkeld


« Laatst bewerkt op: 25 januari 2020, 11:11:04 am door ExLibris »

ExLibris

« Reactie #7 Gepost op: 25 januari 2020, 11:18:50 am »
Ik ben nu bezig om de huizen te plaatsen. Hiervoor is het particle system veel te random. Daarom ben ik nu aan het kijken naar de scatter object add-on. Hiermee kan ik tamelijk eenvoudig de huizen plaatsen op de plekken waar ik wil, maar ondanks dat ik de randomness op 0 gezet heb plaatst de add-on de huizen nog veel te random voor mij. Met scatter objects teken je een lijntje en plaatst blender instances van 1 of meerdere objecten langs dat lijntje. Eigenlijk is dat helemaal wat ik zoek, alleen zou ik de willekeurige draaiing van de Z-as nog een stuk willen verminderen. Heeft iemand een idee daarvoor?



« Laatst bewerkt op: 26 januari 2020, 14:51:47 pm door ExLibris »

ExLibris

« Reactie #8 Gepost op: 25 januari 2020, 11:50:22 am »
Dit is eigenlijk helemaal wat ik wil:

https://blendermarket.com/products/asset-sketcher
https://youtu.be/4LrpUp57E0M

Op zich heb ik er geen problemen me om eventueel die 30 euro te betalen voor de add-on, maar ik wil de mogelijkheid behouden om mijn kaart omzetter vrij beschikbaar te maken als iemand er interesse in heeft (als je je eigen dorp of stad zou willen bouwen), hoewel mijn ervaring is dat er weinig interesse voor dit soort zaken is.


Offline IJp

  • *
  • Berichten: 4,387
    • Bekijk profiel
    • IJpart
« Reactie #9 Gepost op: 26 januari 2020, 12:21:36 pm »
Volgens mij zijn ze allemaal nog in winterslaap ;)
Ik zie wel dat je zelf toch al wat verder bent gekomen, ga zo door en als de leden nog uit hun winterslaap komen zullen er misschien nog wel tips opduiken.

ExLibris

« Reactie #10 Gepost op: 26 januari 2020, 19:17:58 pm »
Tja, ik zie niet zo heel veel beweging in dit forum. Om eerlijk te zijn overweg ik eens rond te kijken naar een ander forum. Ik wil heel graag mijn kennis delen, maar ook van anderen leren. Nu heb ik een beetje het gevoel om in het luchtledige mijn voortgang hier neer te pennen. Dat is jammer. Wellicht dat een forum een achterhaald medium is voor communicatie, maar Whatsapp of Facebook groepen zijn me weer te vluchtig (ik weet het, ik ben 50+).

Sorry dat ik wat gefrustreerd klink, maar ik ben al jaren bezig om samen met anderen iets op te zetten mbt tot CGI. Ik vind het zo jammer om in mijn eentje te blijven knutselen. Wie weet dat een andere hobby deze samenwerking wel kan bieden... Daar moet ik nog eens over nadenken.

Offline IJp

  • *
  • Berichten: 4,387
    • Bekijk profiel
    • IJpart
« Reactie #11 Gepost op: 27 januari 2020, 10:27:38 am »
Hier 60+  :)
Je horizon verbreden is nooit weg maar iets in het Nederlands vinden zal niet meevallen alles is bijna Engels.
ik heb misschien wel een andere manier om je landkaart zo low poly mogelijk te houden.
je image as planes landkaart 1x subdividen en dan de landkaart vlakken met knife knippen daarna van elk vlak een vertex group maken plus material en kleur geven.
De plaatsen die verhoogd of verlaagd moeten worden extra subdividen en met sculpt mode bewerken.
het is maar een ideetje om het zo low poly mogelijk te houden.


 

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #12 Gepost op: 27 januari 2020, 11:36:24 am »
Sorry, ik heb een tijdje weinig tijd om te reageren, maar vind dit een zeer boeiend onderwerp. Je kennis van de node editor is vele malen groter dan die van mij, dus ik kan je moeilijk helpen.
Ik heb net al je publicaties hierover bekenen. Het enige dat ik zou kunnen zeggen wat betreft het plaatsen van huizen langs een lijn is dat je misschien de array modifier zou kunnen gebruiken, daarmee kun je de obejcten langs een lijn laten lopen, maar ik vrees dat je het anders bedoelt.

Ik hoop dat je de ontwikkeling hier verder nog laat zien en als je het naar een ander platform brengt, dan hier zegt waar het voortaan te volgen is.

ExLibris

« Reactie #13 Gepost op: 27 januari 2020, 20:40:18 pm »
Hier 60+  :)
Je horizon verbreden is nooit weg maar iets in het Nederlands vinden zal niet meevallen alles is bijna Engels.
ik heb misschien wel een andere manier om je landkaart zo low poly mogelijk te houden.
je image as planes landkaart 1x subdividen en dan de landkaart vlakken met knife knippen daarna van elk vlak een vertex group maken plus material en kleur geven.
De plaatsen die verhoogd of verlaagd moeten worden extra subdividen en met sculpt mode bewerken.
het is maar een ideetje om het zo low poly mogelijk te houden.

Dank voor je antwoord!

Wat mij betreft hoeft het een forum niet in het Nederlands te zijn. Met Engels kan ik ook wel vooruit.

Jouw idee van het vlak opknippen met de knife tool, daar had ik nog niet aan gedacht. Dat zou in wel een optie kunnen zijn en daar ga ik eens mee stoeien. Ik was begonnen met een plane zonder die te subdividen, maar voor het plaatsen van de schepen en bomen heb ik het vlak wel verdeeld om object scatter toe te kunnen voegen. Door het gebruik van Vertex groups kan je den bepalen waar bomen/schepen moeten komen en waar niet. Met deze subdivide kan ik eventueel laten hoogte aanbrengen die ik niet kan oplossen met een Normal map.

Ik zal hieronder in een aparte post uitleggen welke technieken ik tot nu toe gebruikt heb en wat ik als voor- en nadelen ervaar.




ExLibris

« Reactie #14 Gepost op: 27 januari 2020, 20:50:10 pm »
Sorry, ik heb een tijdje weinig tijd om te reageren, maar vind dit een zeer boeiend onderwerp. Je kennis van de node editor is vele malen groter dan die van mij, dus ik kan je moeilijk helpen.
Ik heb net al je publicaties hierover bekenen. Het enige dat ik zou kunnen zeggen wat betreft het plaatsen van huizen langs een lijn is dat je misschien de array modifier zou kunnen gebruiken, daarmee kun je de obejcten langs een lijn laten lopen, maar ik vrees dat je het anders bedoelt.

Ik hoop dat je de ontwikkeling hier verder nog laat zien en als je het naar een ander platform brengt, dan hier zegt waar het voortaan te volgen is.


Dank je voor je antwoord! Mijn gemopper was het minst voor jou en Ijp bedoeld want jullie regeren tenminste.
Jouw idee met de array modifier is een van de dingen die ik aan het onderzoeken ben. Ik denk dat je mijn probleem helemaal snapt. Ik zoek niet meer dan dat ik een lijntje kan trekken en dat dan meerdere objecten langs dat lijntje verschijnen. Ik vind curves alleen altijd wat lastig. Het liefst zou ik gewoon met annotate of grease pencil een streepje trekken en daar objecten in een collection aan toevoegen, eigenlijk zoals de scatter control addon, maar dan met meer controle. Ik ben er nog niet helemaal uit dus  :)