Topic: Geluidsgolven animeren  (gelezen 10396 keer)


Offline amurre

  • Member
  • *
  • Berichten: 10
    • Bekijk profiel
« Gepost op: 06 oktober 2015, 10:49:43 am »
Hallo allemaal,

Korte tijd geleden ben ik begonnen met het tekenen in Blender. Nu ben ik toegekomen aan het animeren van geluidsgolven in mijn laatste tekening, ik heb helaas helemaal geen idee hoe ik het geluidsgolven-effect kan creëren en in een kleine cirkel te laten beginnen, waarna deze netjes golvend zich uitspreidt door de 'ruimte'.

Heeft iemand een idee hoe ik dit kan creëren?

Het plaatje wat bij deze post staat is een screenshot vanuit YouTube, dit effect wil ik maken.
Heb zelf nog geen manier gevonden om dit vorm te geven. 



Ben heel erg benieuwd of dit soort animatie gecreëerd kan worden in blender.

Offline JvL

  • Member
  • *
  • Berichten: 3,415
    • Bekijk profiel
    • Llyr Studio
« Reactie #1 Gepost op: 06 oktober 2015, 11:04:46 am »
Welkom op het forum. Ik heb het zelf nog nooit hoeven te doen maar het is zeker mogelijk afhankelijk van je eigen kennis van Blender.

Misschien kun je wat met deze addon:
https://www.youtube.com/watch?v=sKSNw-q8HBY

En anders even zoeken op "visualizing sound waves blender".

Succes!

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #2 Gepost op: 06 oktober 2015, 12:31:00 pm »
Je kunt ook wat video's bekijken mbt de wave modifier.

Offline Ruud

  • Member
  • *
  • Berichten: 1,863
    • Bekijk profiel
« Reactie #3 Gepost op: 06 oktober 2015, 13:52:27 pm »
Je kunt ook een shapekey gebruiken om je ringen op te schalen handmatig of je moet toch wel wat complexere tutorials gebruiken als beginner.
https://www.youtube.com/watch?v=zlv2wrV68zQ

Offline IJp

  • *
  • Berichten: 4,387
    • Bekijk profiel
    • IJpart
« Reactie #4 Gepost op: 06 oktober 2015, 14:07:45 pm »
Welkom Amurre.

Om het simpel te houden denk ik ook dat de wave modifier je wel een eindje op weg kan helpen.
Ik zou wat halve ringen maken in editmode en daarna wat spelen met de wave modifier.
Succes.

https://www.youtube.com/watch?v=c61NbPYasQc

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #5 Gepost op: 07 oktober 2015, 09:27:45 am »
Ik heb even gekeken en denk dat je 3 dingen onder de knie moet krijgen.
1 De wave modifier
2 Bake sound to curve
3 Drivers

Wat je moet doen is de hoogte Height en de snelheid Speed van de Wave modifier aanpassen dit kan met keyframes die je met de hand instelt, maar beter is dit om met drivers te doen die gekoppeld zijn aan de curve van de sound.

Dus google op de drie dingen die ik genoemd heb, bekijk daar de tutorials van en ga dan aan de slag. Dan heb je aardig wat geleerd.

Je kunt het dus ook eenvoudiger doen, alleen met de wave modifier en dan met de hand die waarden aanpassen, dan kom je een eind in de richting.

Offline Nick Van den Broeck

  • Member
  • *
  • Berichten: 216
    • Bekijk profiel
    • Blender Education
« Reactie #6 Gepost op: 07 oktober 2015, 09:31:12 am »
Persoonlijk zou ik het met een wave texture als displacement modifier proberen. Je kan dan de ruimte van de mapping loskoppelen van de schaling van het object.
Het uitdijen kan je dan door keyframes op de shaling bereiken, via shapekeys of via transparantie bestuurd door een tweede texture.

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #7 Gepost op: 07 oktober 2015, 13:20:23 pm »
@Nick: Wat jij voorstelt lijkt mij aanzienlijk lastiger. Kun je op deze manier de vorm beter bepalen of zo? Wat is het voordeel?

Offline amurre

  • Member
  • *
  • Berichten: 10
    • Bekijk profiel
« Reactie #8 Gepost op: 08 oktober 2015, 08:02:17 am »
Jongens, heel erg bedankt voor jullie tips!

Ik zie veel mooie creaties hier op het forum, wie weet krijg ik dat ook nog onder de knie!



Offline Nick Van den Broeck

  • Member
  • *
  • Berichten: 216
    • Bekijk profiel
    • Blender Education
« Reactie #9 Gepost op: 08 oktober 2015, 10:11:41 am »
@koos2: het is moeilijk te zeggen wat de voordelen zijn zonder alle opties geprobeerd te hebben. Ik geef toe dat mijn methode omslachtiger klinkt, maar ik denk niet dat ze dat is. De voordelen die ik voor ogen heb (maar dat kan dus verkeerd zijn, want ik heb ze nog niet naast elkaar gelegd) zijn:
1) ik denk dat ik met de displacement modifier en het wave texture meer vrijheid heb om een op en neer gaande golf vloeiend te animeren.
2) ik denk dat het via de displacement ook makkelijker is om de golven los te koppelen van de grootte van het object. M.a.w. wat gebeurt er als ik het object groter maak: ga ik dan meer golfjes krijgen (en blijft de afstand tussen de golftopjes hetzelfde, wat ik graag zou hebben), of gaan de golfjes mee uitgerekt worden (wat de wave modifier naar mijn gevoel gaat doen). Dit is belangrijk als je de golfjes wilt animeren los van het uitdijen van de golf.

denk ik.

@amurre: Laat zeker ook weten welke methode(n) je uiteindelijk geprobeerd/gebruikt hebt. Feedback over wat goed en slecht ging is altijd nuttig.

Offline koos2

  • Member
  • *
  • Berichten: 2,053
    • Bekijk profiel
« Reactie #10 Gepost op: 08 oktober 2015, 13:40:17 pm »
Bedankt voor de toelichting Nick. Ik zal eens jouw optie moeten proberen, maar dat zal me wel veel tijd kosten dus dat duurt nog wel even. De finesses ervan begrijp ik niet maar dat komt omdat ik weinig met displacements heb gewerkt. Laat staan met een  of wave texture.
Leuk om een heel andere invalshoek te zien.

Offline amurre

  • Member
  • *
  • Berichten: 10
    • Bekijk profiel
« Reactie #11 Gepost op: 14 oktober 2015, 12:16:51 pm »
Hallo Reageerders,

@Nick Van den Broeck
Ik heb de Wave modifier als test gebruikt.

Alleen dit voldoet niet helemaal.
Het is zo dat ik vanuit de basis van een luidspreker een geluidsgolf wil creëren, die geanimeerd groter wordt.
De geluidgolf uitbreiden door een "Visual LocRotScale" keyframes te gebruiken lukt prima.

Alleen de geluidgolven zou ik graag tegelijkertijd met het groter worden van de cirkel waarin het geluid zich verspreid, vanuit het centrum van de cirkel tot aan de rand willen animeren, zodat het een echte geluidsgolf is. (dit probleem is zichtbaar op de afbeelding)

Moet ik om een vloeiendere golf te creëren een "Subdivision surface" met een veel hogere waarde gebruiken?

Dit snap ik nog onvoldoende, als jullie tips voor me hebben dan hoor ik ze graag!

Ps. De link naar de afbeelding vanuit m'n OneDrive is: http://1drv.ms/1jyovCh

Offline Nick Van den Broeck

  • Member
  • *
  • Berichten: 216
    • Bekijk profiel
    • Blender Education
« Reactie #12 Gepost op: 14 oktober 2015, 13:28:57 pm »
De wave modifier heeft voor- en nadelen. Een daarvan (je mag zelf kiezen of dit onder voor- of nadeel valt) is dat die al automatisch geanimeerd is.

Wat je moet doen om ongeveer het effect te krijgen dat je wil (denk ik) is in de wave modifier de narrowness hoog zetten, de speed laag (als in 0.01 of zo), de width ook laag (bvb 0.15) en height is afhankelijk van je systeem. (deze settings hangen natuurlijk af van de schaal van je hele scene. Ik ben gewoon bij 1 blenderunit begonnen). Zorg dat ook 'cyclic' aangevinkt staat.

Met deze settings zorgt de wave modifier ervoor dat er op tijdstip 0 een onzichtbare steen in het centrum van je schijf valt. De modifier simuleert dan de golven op een wateroppervlak. Narrowness bepaald de breedte van de golven. Width de afstand tussen twee opeenvolgende golven (wat enkel echt nut heeft als je cyclic activeert). Cyclict zorgt dat er telkens opnieuw een steen valt zodat je steeds weer een golffront krijgt. Speed geeft de snelheid van de golf aan (dus de beweging weg van het centrum).
Omdat de eerste steen pas op frame 0 valt zal je waarschijnlijk beginnen met te weinig pieken. (tenzij je de snelheid hoog zet zodat de eerste golf van de eerste steen al halverwege je object is.) Om dat tegen te gaan is er onder 'Time' een 'Offset'. Zet deze op -100 of nog lager om de eerste steen veel vroeger te laten vallen en alvast golven vanaf het begin te hebben.

Het probleem dat je gaat hebben is dat als je schaalt met keyframes, de 'golflengte' mee gaat vergroten. Met ander woorden: het aantal golftopjes op je object blijft identiek onafhankelijk van de grootte. Persoonlijk is dat niet wat ik wil zien voor jou situatie. Om dat op te lossen moet je denk ik net iets anders te werk gaan: zet geen keyframe op de schaling, maar werk vanaf het begin met de volledige grootte van je schijf. Zorg er nadien voor dat de schijf binnenin het materiaal heeft dat je wil en buiten transparant is via een mixshader gekoppeld aan ofwel een texture, ofwel de afstand tot de oorsprong (via een beetje wiskunde). Nadien animeer je die texture of afstand zodat er steeds meer van de schijf zichtbaar wordt. Zo zou ik het proberen.

Omtrent een mooier resultaat:
1) je hebt gewoonweg veel meer vertices nodig. Het beste is om met de hand al wat vertices bij te voegen. Als ik zo'n schijf moet maken dan begin ik van een cirkel (niet gevuld), extrude buitenste vertices, schaal een beetje naar binnen. extrude nogmaals schaal nog wat meer enz. Tot je in het centrum aankomt, dan schaal naar 0, alles selecteren en 'remove doubles'.
2) nadien ga je de grid nog fijner maken door een subdivision modifier te gebruiken. Ik raad aan er twee te gebruiken: eentje voor en eentje na de wave modifier (de volgorde is belangrijk).
3) gebruik ook smooth shading die ervoor zorgt dat de vlakjes worden geïnterpoleerd wat direct veel gladder oogt.

Laat maar weten of je zo al wat dichter bij wat je wilt bent gekomen.

Offline amurre

  • Member
  • *
  • Berichten: 10
    • Bekijk profiel
« Reactie #13 Gepost op: 21 oktober 2015, 08:35:14 am »
Nick bedankt voor je tips!

Het klopt wat je zegt over de scaling, het liefst heb ik dezelfde golflengte en grootte ondanks het vergoten van het object.
Deze animatie moet laten zien hoe het geluid verspreid wordt in een ruimte.

Om op het probleem terug te komen van het smoothen van het object, lukt helaas niet met meer verticies.
De Verticies hebben waarschijnlijk een verkeerde vorm waardoor je het toch blijft zien.


Een square heeft vierkante faces, waardoor het al heel snel erg mooi en smooth is.
Is er een mogelijkheid om een cirkel met vierkante faces te maken?

Ps. De afbeelding is een oude, deze afbeelding geeft wel weer wat verticies doen als ze een andere vorm dan een vierkant hebben.


Offline Nick Van den Broeck

  • Member
  • *
  • Berichten: 216
    • Bekijk profiel
    • Blender Education
« Reactie #14 Gepost op: 21 oktober 2015, 11:13:29 am »
Hey,

Zie hier vier standaard methoden om een schijf te maken van verteces:


De bovenste rij geeft de originele mesh, de onderste rij de wireframe als je 3 of 4 keer de subdivision modifier toepast.

Van links naar rechts:
1) opgevuld met driehoekjes (was vroeger de standaard). Dit is geen ideale methode want die geeft typisch artifacten zoals jij die ziet. Je ziet ook op de ge-subdivide versie dat er die typische parabooltjes richting het centrum ontstaan die het probleem geven.
2) opgevuld met een n-gon (dus gewoon alles selecteren en opvullen met F). Deze is ook niet ideaal, want zoals je kan zien in de versie eronder is het eerste wat er gebeurt een vertex in het centrum. Gevolg: vanaf subdivision 2 zit je in hetzelfde schuitje als versie 1.
3) Dit is wat ik meestal doe: start vanaf een cirkel en extrude naar binnen. Dan krijg je vierkantjes. Helemaal op het einde neem je een laatste extrude, scale naar 0 en remove doubles. Probleem is dat het centrum nog steeds uit driehoekjes zoals 1 bestaat. Echter, je kan dit verbergen door het heel klein te maken zodat het amper opvalt.
4) Dit is een optie met enkel en alleen maar vierkantjes en wordt vaak gebruikt om afgeronde cilinders of bollen een nette topologie te geven (al kan je voor en echte bol ook een ico-sfeer gebruiken). Deze vereist best wel wat werk. Je begint met langs buiten een cirkel en binnen in een grid. Zet evenveel kadertjes in je grid als verteces (zodat de hele rand van de grid netjes past aan de cirkel). Of: neem een vertex op de cirkel, neem de buren en verbind die, subdivide en verschuif de nieuwe vertex zodat je meer een vierkant hebt. Hoe geleidelijker de structuur van het vierkante center naar de cirkel op de rand loopt, des te beter. Deze methode is wel heel tijdrovend als je begint met veel verteces (hier heb ik er slechts 16 op de hele rand).

Hopelijk helpt dit een beetje?

Wat je ook zeker eens moet proberen is de subdivision en de wave modifier omwisselen van plaats. Dan ga je  eerst de platte cirkel onderverdelen en nadien pas bewegen aan de hand van de golven. Dat kan helpen.