Een Mandelbulb is een driedimensionale fractal die steeds populairder wordt 3d kunst en VFX. In dit artikel loop ik door hoe je snel een mandelbulb hebt gemaakt Houdini , met behulp van een SDF (ondertekend deelvolume op afstand).
In elke voxel slaat een SDF de afstand op naar het dichtstbijzijnde punt op het oppervlak. Houdini kan deze afstanden interpreteren en het afgeleide oppervlak als 3D-geometrie visualiseren. Dit is erg handig omdat de meeste fractale formules de vorm aannemen van een 'afstandsschattingsfunctie' - gezien een punt in de ruimte, de functie retourneert de afstand tot het dichtstbijzijnde punt op het fractale impliciete oppervlak. Dit betekent dat u de resultaten van de fractal-functie direct in elke voxel kunt plaatsen en het werkt gewoon!
Maak eerst een leeg volume (volume SOP) om te vullen met afstandswaarden - geef het de naam 'oppervlak'. Een goede fractal om met te testen is de Mandelbulb, en standaard is het ongeveer 2,5 eenheden breed, dus stel het formaat van het volume in op 2,5, 2.5, 2.5. U kunt de resolutie van het volume wijzigen om snelheid tegen kwaliteit af te wisselen; Een goed uitgangspunt kan de uniforme bemonstering op maat instellen, met een divisiegrootte van 0,01. De standaardmodus van het visualiseren van een volume in Houdini is een mistvolume, maar u kunt dat wijzigen om weer te geven als een hardgrensoppervlak, door de weergavemodus naar Isosurface (op het tabblad Eigenschappen) te wijzigen.
Dan is het een kwestie van het vullen van de voxels met afstandswaarden. Gebruik deze VEX-code in een volume wrangle sop om de Mandelbulb-formule per-voxel uit te voeren:
Vector p = v @ p;
drijf DR = 1;
zweven r = 0,0;
Float Power = CHF ("POWER");
voor (int i = 0; i & lt; chi ("iterations"); i ++) {
r = lengte (p);
if (r & gt; 1.5) pauze;
// Converteren naar Polar-coördinaten
zwevend theta = acos (p.z / r);
float PHI = ATAN (P.Y, P.X);
DR = POW (R, POWER-1.0) * POWER * DR + 1.0;
// schaal en draai het punt
drijf ZR = POW (R, POWER);
theta * = vermogen;
PHI * = POWER;
// Converteer terug naar Cartesiaanse coördinaten
P = ZR * SET (SIN (Theta) * COS (PHI), SIN (PHI) * SIN (Theta), COS (Theta));
p + = v @ p;
f @ oppervlak = 0,5 * log (r) * r / dr;
Houdini Hiermee kunt u uw eigen aangepaste reserveparameters toevoegen aan de gebruikersinterface van een individuele knooppunt. Onze VEX-code bevat parameterreferenties (de CHF () Functies), om ons aspecten van de formule met parameters in de UI te laten beheersen. Die parameters zullen niet standaard bestaan, maar u kunt ze maken door op de knop Reserve-parameters in de rechterkant van het codevenster te drukken.
In dit geval bestuurt de parameter ITERATIES het detailniveau voor de Mandelbulb - Begin met 5 of 6. De stroom zal de vorm van de Mandelbulb regelen - de typische vorm komt op rond de macht 8.0.
Om het oppervlak naar polygonen te converteren, volgt u het volume Warrangle met een SEPE-SOP om te converteren. Gebruik Invert-modus, omdat het wordt geïnterpreteerd als een ondertekend afstandsveld, en u krijgt de gedetailleerde fractal-vorm in polygoonvorm. Effectief keert de omkerenmodus de normooien van het oppervlak en de kronkelingsrichting van de polygonen om.
Je kunt het dan hetzelfde maken als je een ander netwerk, maar omdat het zo gedetailleerd is, kun je het niet in staat zijn om het gemakkelijk uit te schakelen - overweeg het gebruik van procedurele technieken om het te oppervlakken, bijvoorbeeld in de schaduwing van de kromming.
Dit artikel is oorspronkelijk gepubliceerd in 3d wereld , 's werelds best verkochte magazine voor CG-artiesten.Kopen uitgave 237 of inschrijven
Lees verder:
Of je nu net begint in grafisch ontwerp of een doorgewinterde pro, er is altijd iets nieuws om te leren of je voor het spel wilt blijven. Grafisch ontwerp is zo'n uitgestrekte discipline die ..
Ik probeerde al heel lang een perfecte visuele compositie op webpagina's te bereiken. Ik heb veel pijn gehad met CSS-breekpunten in mijn dagelijkse werk en was nooit helemaal tevreden met gem..
Ik heb altijd de ondoden gehouden en zal vaak rooten voor de haveloze underdog die zo vaak wordt gereduceerd tot een bewegend doe..
In deze tutorial zullen we een reeks afbeeldingen maken uit SVG-driehoeken en het opzetten van een geanimeerde overgang van de en..
Voor nieuwkomers om Zott , de interface lijkt heel anders dan andere 3D-modelleringsprogramma's, dus kan intimider..
Pagina 1 van 2: Pagina 1 Pagina 1 Pagina..
Zelfportret is een van de meest lonende uitdagingen die een kunstenaar kan proberen. Omdat we weten dat de landschappen van onze ..
FlexBox is een geweldige tool voor het verminderen van CSS Bloat, en heeft wat suiker ingebouwd om dingen als bronorder en uitlij..