Meta tags:
Headings (most frequently used words):
thursday, 2018, 2017, about, the, data, procedural, world, monday, april, 15, 2019, october, 11, july, 26, sunday, december, 17, tuesday, august, 29, ongoing, projects, popular, this, week, me, blog, archive, regulars, labels, moonmaker, thinking, voxels, back, to, farm, making, citadel, is, voxel, bigger, than, polygon,
Text of the page (most frequently used words):
the (272), and (80), this (74), you (59), will (56), for (52), biome (44), can (42), voxel (34), that (33), are (31), have (30), voxels (28), like (27), moon (26), system (23), each (20), not (19), #procedural (18), data (17), how (17), would (17), from (17), share (17), one (16), time (16), these (16), surface (16), shell (16), terrain (14), farm (14), into (14), much (14), there (14), with (14), may (13), what (13), also (13), but (13), they (13), information (12), content (12), about (12), triangles (12), material (12), citadel (11), use (11), polygons (11), surfaces (11), space (10), video (10), materials (10), august (10), only (10), same (10), real (10), different (10), other (10), them (10), maps (10), map (9), mesh (9), see (9), very (9), your (9), was (9), where (9), just (9), scene (9), polygon (9), point (9), any (9), even (9), their (9), shells (9), noise (8), world (8), triangle (8), december (8), april (8), july (8), new (8), really (8), has (8), more (8), size (8), large (8), which (8), need (8), while (8), gpu (8), meshes (7), next (7), detail (7), january (7), february (7), march (7), june (7), october (7), here (7), shows (7), when (7), could (7), instance (7), want (7), unique (7), geometry (7), image (7), produce (7), using (7), generation (7), possible (7), definition (7), biomes (7), component (7), model (6), com (6), update (6), ue4 (6), labels (6), november (6), september (6), email (6), working (6), create (6), pretty (6), making (6), why (6), get (6), features (6), all (6), than (6), made (6), two (6), most (6), properties (6), moons (6), stack (6), high (6), order (6), parallel (5), vertex (5), color (5), landmark (5), rendering (5), grid (5), over (5), first (5), set (5), make (5), take (5), pinterest (5), facebook (5), blogthis (5), comments (5), because (5), were (5), store (5), final (5), work (5), following (5), red (5), appear (5), volumetric (5), inner (5), list (5), three (5), out (5), project (5), single (5), cover (5), closed (5), inside (5), parametrization (5), provide (5), elevation (5), patches (5), virtual (4), pixel (4), multiple (4), test (4), tiles (4), everquest (4), big (4), player (4), game (4), city (4), unity (4), been (4), captured (4), industry (4), projects (4), used (4), some (4), change (4), early (4), both (4), dataset (4), ben (4), around (4), place (4), scale (4), 000 (4), takes (4), smaller (4), compressed (4), version (4), versus (4), problem (4), changes (4), building (4), things (4), once (4), between (4), below (4), often (4), objects (4), canvas (4), object (4), based (4), small (4), experience (4), able (4), computer (4), defines (4), resolution (4), today (4), compute (4), enough (4), points (4), since (4), low (4), problems (4), base (4), uses (4), sphere (4), patch (4), distortion (4), stats (3), art (3), kickstarter (3), geospatial (3), tool (3), generated (3), line (3), cloud (3), unlimited (3), off (3), engine (3), lod (3), voxelfarm (3), architecture (3), 2013 (3), 2017 (3), 2018 (3), view (3), complete (3), miguel (3), got (3), bit (3), now (3), way (3), key (3), sure (3), posts (3), storing (3), represent (3), likely (3), complex (3), did (3), massive (3), everything (3), let (3), right (3), captures (3), solid (3), cannot (3), become (3), due (3), does (3), int (3), float (3), etc (3), entire (3), per (3), face (3), 32bit (3), put (3), question (3), anything (3), say (3), people (3), think (3), approach (3), hundreds (3), deal (3), example (3), back (3), team (3), rich (3), apply (3), simple (3), closer (3), above (3), artist (3), then (3), his (3), still (3), interesting (3), spatial (3), processing (3), process (3), many (3), gpus (3), outside (3), volume (3), required (3), far (3), spherical (3), geodesic (3), area (3), frequency (3), sections (3), scales (3), radius (3), contains (3), location (3), transitions (3), isolated (3), transitional (3), offline (3), concentric (3), worley (2), props (2), progressive (2), water (2), cellular (2), memory (2), state (2), simplex (2), perlin (2), normal (2), algorithms (2), mining (2), cubes (2), gdc (2), eqnext (2), dem (2), contour (2), block (2), occlusion (2), zones (2), planet (2), fill (2), culling (2), compression (2), clouds (2), caves (2), meta (2), streaming (2), sandbox (2), asteroids (2), minecraft (2), opencl (2), tree (2), moonmaker (2), 2019 (2), profile (2), past (2), few (2), incredible (2), business (2), networking (2), storage (2), network (2), series (2), videos (2), couple (2), useful (2), cool (2), describe (2), should (2), locations (2), whole (2), side (2), follow (2), earlier (2), post (2), measurements (2), equivalent (2), terms (2), difference (2), pieces (2), shapes (2), applies (2), fast (2), doing (2), hand (2), reason (2), graphics (2), aspect (2), apple (2), progress (2), running (2), realize (2), feeling (2), instances (2), core (2), times (2), depends (2), twice (2), apples (2), air (2), exposed (2), later (2), viewer (2), sets (2), rules (2), after (2), 300 (2), close (2), case (2), returns (2), discuss (2), comment (2), 8bit (2), demo (2), built (2), bits (2), constructive (2), csg (2), else (2), too (2), slow (2), heightmaps (2), something (2), render (2), traditional (2), rarely (2), begin (2), seeing (2), fabric (2), feel (2), tower (2), terraformed (2), distinct (2), experienced (2), placed (2), rocks (2), collection (2), organic (2), having (2), least (2), build (2), lods (2), efficiently (2), artists (2), tricks (2), current (2), word (2), becomes (2), photoshop (2), basic (2), find (2), thanks (2), part (2), amount (2), created (2), man (2), goal (2), virtually (2), millions (2), serve (2), number (2), users (2), datasets (2), show (2), changed (2), future (2), link (2), entertainment (2), drop (2), thursday (2), help (2), understand (2), matter (2), had (2), imagine (2), paint (2), our (2), serial (2), solved (2), previous (2), look (2), tell (2), additional (2), age (2), rock (2), cube (2), quad (2), split (2), humans (2), elements (2), important (2), needed (2), section (2), results (2), allow (2), keeping (2), guarantee (2), perturbed (2), its (2), camera (2), perceived (2), areas (2), mipmaps (2), technique (2), keep (2), fragment (2), blend (2), distance (2), designer (2), noises (2), distribution (2), definitions (2), appearing (2), height (2), km2 (2), tint (2), containing (2), types (2), blue (2), custom (2), images (2), characteristics (2), viewed (2), computed (2), 500 (2), preceding (2), exaggerated (2), better (2), understanding (2), 10km (2), another (2), craters (2), transitioning (2), regions (2), neighboring (2), determine (2), outmost (2), magnitude (2), powered, blogger, wind, turbulence, tools, programming, logo, fractal, dynamic, copy, automata, buoyancy, boolean, machine, voyager3, voxeldb, volcanic, clustering, universe, transvoxel, toy, topology, toon, texturing, tablet, tug, sword, sworcery, starforge, star, warp, slides, sky, skirts, singularity, seminar, sculpting, sand, sampling, theorem, ridged, multifractal, ribbed, vaults, reduce, recursion, quadtree, province, pro, presentation, prefix, sum, praetoria, politics, plugin, paniq, pgc, oveja, oculus, neuschwanstein, nerd, kingdom, choice, multiplayer, monkey, mobile, microvoxels, projection, melodive, marching, magicavoxel, macro, mmo, mca, journey, john, whigham, jobs, interpolation, indy, indie, humidity, hire, herringbone, greenspace, global, illumination, giantbomb, genetic, algorithm, gpgpu, fall, fbx, extension, dwarf, fortress, demoscene, demoparty, decimate, creator, county, country, corner, columns, capital, cantor, dust, blockscape, baloney, android, ambient, aigamedev, undergrowth, tectonic, plates, snow, smoothing, skylight, shadows, selection, seams, scan, ruins, roads, river, relaxation, pollock, octree, mont, royal, society, license, leaves, isosurfaces, interview, http, google, golem, service, elastic, continent, concept, castle, canyon, artificial, intelligence, adsense, 3ds, max, coat, wang, simulation, svo, baking, light, scattering, ffd, euclideon, cuda, atmosphere, colonization, compresion, lake, dual, contouring, recovery, synthesis, clipboard, desert, clipmaps, clipmap, unreal, radiosity, physics, simplification, instancing, mapping, voxelization, forest, sputnik, grammar, realtime, studio, regulars, 2010, 2011, 2012, 2014, 2015, 2016, blog, archive, montreal, canada, cepero, years, ride, started, hobby, grow, setting, company, cow, recently, components, action, comes, thi, sums, nice, additions, done, last, month, ability, brushes, creation, weekend, undergr, buildings, months, briefly, hear, opin, almost, start, street, layout, gap, political, landscape, revealed, good, fire, generati, beautiful, thing, dark, crowd, fund, stop, scams, announced, games, popular, week, artstation, ongoing, subscribe, atom, home, older, fresh, alternative, forms, visualizing, penalties, attached, method, holes, cutting, merging, outperform, merge, layers, simpler, representation, must, slower, methods, reproduce, economically, adopted, comparison, experiment, fairly, larger, measuring, package, download, character, watch, please, ignore, rough, edges, optimized, aimed, forming, watertight, 080, 225, 203, 456, takeaway, billion, million, guessed, overhead, talk, 210, seems, somehow, feels, considering, heard, surprise, little, meet, portions, actually, hidden, initially, destroying, arrows, included, luckily, collecting, configuration, count, 122, 470, 105, come, database, sense, maybe, surprising, expected, sizes, cases, capturing, fully, busy, course, nuances, tailored, schemes, producing, diminishing, ratio, questions, opinions, love, visible, 16bit, entries, 64bit, attributes, empty, 527, identifiers, pairs, faces, indices, coordinates, bigger, tuesday, magic, usually, obvious, allows, mechanics, harvesting, tunneling, destruction, goes, beyond, easier, express, engines, mind, figure, themselves, weird, guy, saying, try, lsd, roof, explained, rather, developed, before, myriad, static, towers, walls, cliffs, bunch, instanced, clearly, intersecting, simply, instead, spiral, slowly, unravels, meters, carefully, plan, gets, messy, leads, trouble, unfortunate, level, going, immersion, breaking, individual, own, agglomeration, trivially, condensed, serious, consideration, needs, reuse, cheap, variations, planning, lot, mostly, triple, scenes, open, worlds, plenty, talented, slew, remains, veiled, mysterious, talks, microsoft, limit, kind, novel, write, those, versed, options, macros, compelling, fiction, makes, automate, visibility, robust, ways, hacks, advantage, developing, workflow, maya, blender, favorite, starts, mark, volumes, continues, refine, intuitive, systems, talking, who, became, year, quality, caught, everyone, attention, builder, under, ginsan, alias, beauty, true, renaissance, superb, music, tweets, curious, him, https, twitter, adamiseve, screenshot, soe, daybreak, available, yet, aspects, sunday, neat, platform, check, origins, server, realization, square, kilometers, sub, millimeter, concurrent, self, website, dropbox, raw, form, imagery, convert, models, browser, operations, queries, compare, snapshots, near, plugins, easily, among, members, end, release, oriented, towards, geo, focus, covering, intrigued, send, ask, struggle, explain, savvy, professionals, fields, occasions, move, refresh, drink, hide, lavatory, avoided, analogy, drawing, long, turns, until, rasterization, worked, days, clever, optimizations, remained, awfully, inherently, solution, value, computations, never, second, transistor, densities, faster, remember, means, know, painted, whether, dependencies, free, amazing, property, without, context, enabled, textures, looks, indistinguishable, typical, poly, textured, tend, correct, five, tetrahedron, enable, massively, solve, contrary, intuition, projecting, always, processors, mean, higher, dimensions, random, town, nodes, add, fraction, answer, locally, eureka, moment, enables, holy, grail, solutions, brevity, reasons, won, enumerate, happy, industries, approaches, solving, grows, entities, consume, shift, computing, necessarily, happen, certain, heart, center, revolution, thinking, devised, ago, similar, composition, ones, found, solar, main, challenge, interiors, rendered, crisp, regardless, assumes, meshing, structure, computational, actual, smoother, irregular, geometric, depth, defined, contained, proximity, output, mined, players, orbit, adaptive, manager, increase, modifications, deemed, application, trade, resident, selectively, upload, necessary, total, reduced, minimum, position, register, contributes, complexity, counts, shader, samples, executed, shaders, cpu, functionality, sufficient, sufficiently, rare, configure, abundance, occurrence, pattern, underground, expressed, lower, local, noticed, cross, displaying, accepts, valid, cavities, within, extrude, maximum, function, obtained, multi, described, construction, generating, inexpensive, either, procedurally, dozens, natural, stage, input, yield, best, range, addition, four, yellow, white, wrapped, shown, fit, numeric, identifier, prevalent, internal, away, generate, views, consistent, lead, track, individually, analytically, assignment, inferred, relative, patching, approximately, nearly, applied, pre, introduce, variation, transition, creating, colors, simplified, polar, tropical, equatorial, colored, green, respectively, modes, type, affect, overall, tile, well, designed, combination, thus, reducing, repetitive, predictable, patterns, environment, planting, randomization, boulders, overhangs, crater, entropy, dry, seas, cracks, gravitational, tides, classified, belonging, specific, including, limited, placement, coloration, requires, run, developer, computers, quickly, augmented, produced, principles, production, discussed, diagrams, practice, proportionally, optionally, distorted, configured, overcome, outer, starting, cell, monday, task, comfort, pajamas, discusses, vegetation, general,
Text of the page (random words):
ntains planting rules which will determine the location frequency and randomization of smaller features like rocks boulders overhangs etc rock instances over terrain each biome is be made of tile able elements so the real time component can apply the same information in multiple locations of the moon and in other moons as well the biome information will also be designed in a way that fast distortion and re combination are possible thus reducing repetitive and predictable patterns in the environment the system uses two types of biome tiles transitional and isolated transitional biome information will appear in regions where a biome is transitioning into a neighboring biome isolated biome information will appear in regions the system can guarantee there are no neighboring biomes these two distinct modes are needed because some large biome features like craters can only be placed in areas where the biome is not transitioning into another biome type since biome transitions can affect the height profile and overall look of the terrain features the following simplified example shows a moon that uses three different biomes polar tropical and equatorial the biomes are colored red blue and green respectively a moon with three biomes patches where there is an isolated biome appear in a solid color patches with transitional biomes show a blend of colors the system will use a set of pre computed noises to introduce variation in the biome transition zones creating interesting unique transitions from one biome into another procedural noise applied to biome transitions the preceding images have exaggerated the size of each biome patch relative to the moon s size to provide a better understanding of the biome patching technique a single biome patch will cover an area of approximately 10km by 10km a moon having 1 500 km radius will have a surface area of 30 000 000 km2 to cover its surface it would take nearly 300 000 of these patches biome grid resolution for a moon of 1 500 km radius the biome grid resolution can lead to a very large number of biome patches the system will not keep track of these individually since each patch s location can be analytically computed and for most of the patches their biome assignment can be inferred from a high order biome map high order biome maps will provide the moon s key characteristics when viewed from far away the system will use these maps to generate additional detail for closer views keeping the moon s definition consistent when viewed at different scales high order biome maps are 2d images that can fit the moon s surface using a custom 2d parametrization each point of the map contains a numeric identifier for the biome that is prevalent in that location of the surface or internal shell 2d biome map the image above shows a map with four different biome types blue red yellow and white the image is wrapped around the sphere using a custom 2d parametrization one possible parametrization is shown below 2d parametrization for biome id map in addition to the biome id map the system will allow other maps for instance maps containing elevation and surface color elevation tint and a far range rendering of the moon a single pixel in each image may cover 4 km2 making them inexpensive to produce these elevation and tint maps can be either procedurally generated or artist made for a project containing only dozens of moons and where each moon is required to have rich unique natural properties this is a stage where artist input is likely to yield the best returns the following image captures the entire approach to generating shell surface elevation and other properties the three scales used for moon construction a moon will be made of at least one spherical shell in case there are multiple shells the system will extrude inner shells based on their maximum radius and the shell s height function which is obtained from the same multi scale process described in the previous sections for each shell the moon designer will provide a high order biome distribution map biome definitions for the biomes appearing in this map and material definitions for the materials appearing in the biome the system accepts air as a valid material which can be used to create cavities within any shell a cross section of the moon terrain displaying two different shells a single shell will also be a volumetric object and its depth will be defined by a stack of materials the material stack information will be contained in the biome a material stack made of 6 materials since underground materials will rarely become exposed they can be expressed at a much lower resolution than biome surface materials and the use of local procedural noises will not be noticed by the player the material stack functionality may be sufficient to place as some materials in the stack can be sufficiently rare the biome designer will be able to configure the abundance and occurrence pattern of any material in the stack the procedural generation is executed by both gpu shaders and cpu voxel algorithms the shader will compute a fragment color for each of the three scales and it will blend these samples based on the distance from the camera to the fragment any detail that is small enough to not register in the geometry but that still contributes to the perceived complexity of the surfaces will be captured by normal maps generated in real time from the procedural definition of materials biomes or the high order moon definition maps this technique will keep low polygon counts for the scene the trade off is that biome and high order definition maps will have to be resident on gpu while the moon is in view it is possible to selectively upload only the mipmaps necessary for rendering the current moon scale the total amount of gpu memory required at any time will be reduced to a minimum by streaming mipmaps in and out of gpu as the viewer position changes when features become large enough due to their proximity to the camera they begin to appear in the geometry output by the real time voxel generation this also applies to any sections of the moon that may have been terraformed or mined by the players if the changes are large enough they could be perceived from orbit as voxel farm s adaptive scene manager will increase the lod for any areas with modifications deemed important by the application 16 comments email this blogthis share to x share to facebook share to pinterest labels asteroids moon planet procedural thursday october 11 2018 thinking about voxels very often people ask me what a voxel is i struggle to explain this in simple terms even to savvy professionals from other fields of it in most occasions i just say a voxel is like a pixel but in 3d and move on to refresh my drink or hide in a lavatory i can t help the feeling i have avoided the question to help understand why voxels matter today we need a different analogy if i had enough time i would say voxels are like triangles a triangle defines a closed 2d space imagine we want to do something to this closed space for instance paint it red we could do this by drawing one long line and making the right turns until we have our triangle this is how most triangle rasterization worked in the early days even after many clever optimizations it remained awfully slow it was an inherently serial solution the value we paint for one point depends on computations we made for earlier points this would never scale up to hundreds of millions of triangles per second even with the transistor densities we have today gpus changed that they render triangles faster only because the problem is solved in parallel remember how a triangle is a closed 2d space that means there is inside versus outside the gpu with a simple test will know this if a point is inside it will be painted red it does not matter whether previous points were inside since there are no dependencies between points the gpu is free to look at many points at the same time this amazing property of triangles where they can tell inside from outside without any additional context enabled the gpu age just like a triangle defines a closed 2d space a voxel defines a closed 3d space and just like a triangle a voxel can have any properties you want it could have a color or a material or even surface parametrization voxels can use uv maps and textures in the same way triangles do in this next image you can see this voxel rock that looks indistinguishable from your typical low poly textured mesh we tend to think of voxels as cubes and most of the time this is correct a voxel cube is equivalent to a surface quad just like the quad can be split into two triangles a voxel cube can be split into five tetrahedron voxels and just like triangles did for 2d problems voxels enable massively parallel processing for problems in 3d i think this is a big deal but what are these problems that you need to solve in 3d rendering is not one of them contrary to what intuition may tell you rendering is about projecting the data into 2d so humans can understand it it will always be solved more efficiently using 2d elements like triangles and surface processors like gpus while seeing is very important for humans it does not really mean anything to a computer they have no problem working in higher dimensions pretty much everything else is a problem in 3d here is a basic one imagine you needed to compute the volume of a very random 3d object that has the size of a small town if you are using voxel data you can have hundreds of nodes in a network compute a small section of the object s volume and then add the results to get the final volume you would get the results in a fraction of the time this is only possible because voxels like triangles did it for gpus allow you to answer the inside outside question locally that s the voxel eureka moment this enables many holy grail solutions which for brevity reasons i won t enumerate but that i will be happy to discuss if you drop me a comment below today most of the entertainment and geospatial industries still use serial on core approaches to solving their 3d content problems as the data grows and more entities are required to produce it and consume it the shift to parallel computing will necessarily happen and we can be certain voxels will be at the heart of this next age just like triangles were at the center of the gpu revolution 7 comments email this blogthis share to x share to facebook share to pinterest labels voxels thursday july 26 2018 back to the farm we have built a pretty neat system it is a spatial storing and processing platform if you check the origins of this project you ll see it was about using a server farm to store and process 3d content this system is the realization of this early goal the system can store virtually unlimited data it can cover millions of square kilometers at a sub millimeter resolution and it can serve a virtually unlimited number of concurrent users as it is today you would use it as a self serve website like dropbox but for spatial data we can take raw data in the form of point clouds heightmaps imagery meshes etc and convert them into more useful things like terrain surfaces or volumetric models you can view these datasets right in the browser the really cool part is the parallel processing thanks to this aspect we can compute complex volumetric operations and other queries on the data in real time for instance we can compare two different snapshots of terrain and show what has changed in the near future we will link the voxel farm plugins for unity and ue4 to this system so you can easily share these datasets among team members and even end users the first release of this system will be very oriented towards the geo spatial and mining industry we will focus on entertainment projects a bit later i will be covering this in more detail in future posts but if you are intrigued by this drop me a line to miguel at voxelfarm com and i will send you a link 8 comments email this blogthis share to x share to facebook share to pinterest labels block model dem farm cloud geospatial terrain model sunday december 17 2017 making the citadel we just put up a video of how the magic citadel demo for ue4 was built the demo is not available yet we are still working on the game side of it in ue4 but the citadel model is pretty much complete at this point i would like to cover a couple of aspects that i find interesting from this experience a question i often get is why use voxels at all i usually point at the obvious bits if you want to do real time constructive solid geometry csg pretty much anything else is too slow csg is what allows to create game mechanics like harvesting tunneling destruction and building new things also if you are doing procedural generation of anything that goes beyond heightmaps voxels make it much easier to express and realize your procedural objects into something you can render using traditional engines like ue and unity what i rarely say is that once you work with voxels your mind changes i let people figure this out by themselves i do not want to be that weird guy saying you really need to try lsd you change because you begin seeing your entire project as a single fabric of content you feel more like you are working on a canvas there is no difference between a tower roof versus terrain you have terraformed it is a really distinct feel which cannot be explained rather experienced if you have developed for ue4 or unity before think of how you would approach a project like this citadel while it is possible you would be building out of a myriad of objects placed in your scene you would have an object for the terrain static meshes for the towers walls even the rocks making up your cliffs would be a bunch of instanced meshes clearly intersecting each other simply put there is no canvas instead you have a collection of things if you want to have large organic shapes like a massive spiral tower that slowly unravels over hundreds of meters you would need to carefully plan how to deal with all this unique geometry the image below shows an example of this from the citadel it gets messy this often leads to not having unique geometry at all as it is too much trouble it is unfortunate unique geometry can take your content to a whole new level once you have experienced it for a while going back to the traditional instance based approach is immersion breaking at least it is for me now when you build out of individual small pieces even if they have lods of their own their agglomeration cannot be trivially condensed into single objects that will efficiently lod serious consideration needs to go into which objects you use to build the world how large they can be how you can reuse them and create cheap variations of them all this planning takes a lot of work and mostly a big deal of experience this is why it takes a triple a team to produce complex scenes and rich open worlds even when there is plenty of very talented artis...
|