Video wird geladen...

Video konnte nicht geladen werden

Zur Startseite

69,913 Aufrufe • vor 9 Monaten •via X (Twitter)

0 Kommentare

Keine Kommentare verfügbar

Kommentare vom Original-Post werden hier angezeigt

Ähnliche Videos

Turn me up 6god
0:20

Sensitive content

Turn me up 6god

B1

34,890 Aufrufe • vor 5 Monaten

Introducing: Ecliptica_Veil_Refrain Step into the latest marvel of #Trinity’s AI simulation universe: Ecliptica_Veil_Refrain. {"RENDERER_STATE":{"Nraymarch":64,"spp_per_frame":1,"max_spp":32,"show_bounds":false,"skyColor":[0,0,0],"sunColor":[0.5489273590657855,0.5489273590657855,0.5489273590657855],"sunPower":1.367144516090617,"sunLatitude":76.73485298771871,"sunLongitude":138.94571082309892,"colliderSpec":[0.6666666666666667,0.6013071895424837,0.6013071895424837],"colliderDiffuse":[0.06666666666666667,0.3607843137254902,0.8980392156862745],"colliderRoughness":0.341872424239417,"exposure":0.3664541543565143,"gamma":1.5549681231534773,"saturation":1.2470158685577861,"anisotropy":0.5438412313677659,"extinctionScale":-0.4726864204465695,"emissionScale":1.0281427174005486,"blackbodyEmission":-11.619147601146414,"TtoKelvin":0.9924693630221351},"SOLVER_STATE":{"timestep":1,"NprojSteps":16,"vorticity_scale":0.43671445160906175,"Nx":160,"Ny":160,"Nz":160,"max_timesteps":500,"expansion":0.1},"SIMULATION_STATE":{"gravity":0.029775985336981482,"buoyancy":0.009925328445660495,"radiationLoss":0.9970476559131248,"blast_height":0.13595000702148574,"blast_radius":0.1583940602227418,"blast_velocity":48.523827956562414,"blast_heat_flux":49.62664222830247,"animation_period":13.233771260880658,"dust_inflow_rate":4.962346815110676,"dust_absorption":[0.8980392156862745,0.5843137254901961,0.06274509803921569],"dust_scattering":[0.011764705882352941,0.011764705882352941,0.9372549019607843],"TtoKelvin":52.93508504352263},"CAMERA_STATE":{"pos":[428.5065222671221,231.18004269182862,-137.9063177523132],"tar":[95.47877293559753,48.26456077993378,85.76052711016654],"near":1,"far":20000},"GUI_STATE":{"visible":true},"EDITOR_STATE":{"common_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Bind UI parameters to uniforms used in the various programs\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// \"Physics\"\nuniform float gravity; // {\"name\":\"gravity\", \t \"min\":0.0, \"max\":0.1, \"step\":0.001, \"default\":0.05}\nuniform float buoyancy; // {\"name\":\"buoyancy\", \"min\":0.0, \"max\":0.1, \"step\":0.001, \"default\":0.5}\nuniform float radiationLoss; // {\"name\":\"radiationLoss\", \"min\":0.9, \"max\":1.0, \"step\":0.01, \"default\":0.999}\n\n// Blast geometry \nuniform float blast_height; // {\"name\":\"blast_height\", \"min\":0.1, \"max\":0.9, \"step\":0.001, \"default\":0.25}\nuniform float blast_radius; // {\"name\":\"blast_radius\", \"min\":0.0, \"max\":0.3, \"step\":0.001, \"default\":0.1}\nuniform float blast_velocity; // {\"name\":\"blast_velocity\", \"min\":0.0, \"max\":100.0, \"step\":0.1, \"default\":50.0}\nuniform float blast_heat_flux; // {\"name\":\"blast_heat_flux\", \"min\":0.0, \"max\":100.0, \"step\":1.0, \"default\":100.0}\nuniform float animation_period; // {\"name\":\"animation_period\", \"min\":0.0, \"max\":100.0, \"step\":1.0, \"default\":100.0}\n\n// Dust\nuniform float dust_inflow_rate; // {\"name\":\"dust_inflow_rate\", \"min\":0.0, \"max\":10.0, \"step\":0.01, \"default\":1.0}\nuniform vec3 dust_absorption; // {\"name\":\"dust_absorption\", \"default\":[0.5,0.5,0.5], \"scale\":1.0}\nuniform vec3 dust_scattering; // {\"name\":\"dust_scattering\", \"default\":[0.5,0.5,0.5], \"scale\":1.0}\n\n// Rendering\nuniform float TtoKelvin; // {\"name\":\"TtoKelvin\", \"min\":0.0, \"max\":300.0, \"step\":0.01, \"default\":10.0}\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nfloat Tambient;\nfloat M_PI = 3.141592;\n\nvoid init()\n{\n\t// Any global constants defined here are available in all functions\n \tTambient = 1.0;\n}","initial_glsl":"///////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify the initial conditions for the simulation (velocity, temperature, and medium density/albedo)\n// at time 0.0 (if unspecified, all quantities default to zero).\n///////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvoid initial_conditions(in vec3 wsP, // world space center of current voxel\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n inout vec3 v, // initial velocity\n inout vec4 T, // initial temperature\n inout vec3 medium, // initial per-channel medium density (extinction)\n inout vec3 mediumAlbedo) // initial per-channel medium albedo\n{\n v = vec3(0.0);\n T = vec4(Tambient);\n medium = vec3(0.0);\n mediumAlbedo = vec3(0.0);\n}\n","inject_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Update the velocity, temperature via either:\n// - specification of volumetric inflow/outflow rate due to sources/sinks (vInflow, Tinflow)\n// - modification in-place, i.e. Dirichlet boundary conditions (v, T)\n// Also specify the injected medium density inflow rate, and its scattering albedo.\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvoid inject(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n inout vec3 v, // modify velocity in-place (defaults to no change)\n inout vec3 vInflow, // velocity inflow rate (defaults to zero)\n inout vec4 T, // modify temperature in-place (defaults to no change)\n inout vec4 Tinflow, // temperature inflow rate (defaults to zero)\n inout vec3 mediumInflow, // medium density (extinction) inflow rate (defaults to zero)\n inout vec3 mediumAlbedo) // medium albedo\n{\n float phase = 0.05*M_PI*time/animation_period;\n vec3 blast_center = 0.5*L + 0.5*vec3(0.5*L.x*sin(13.0*phase),\n 0.5*L.y*sin(17.0*phase),\n 0.5*L.z*sin(19.0*phase));\n \n vec3 dir = wsP - blast_center;\n float r = length(dir);\n dir /= r;\n float rt = r/(blast_radius*L.y);\n if (rt <= 1.0)\n {\n // Within blast radius: inject velocity and temperature\n float radial_falloff = max(0.0, 1.0 - rt*rt*(3.0 - 2.0*rt));\n vInflow = dir * blast_velocity * radial_falloff;\n Tinflow.r = blast_heat_flux * radial_falloff;\n\n \t// Also inject absorbing/scattering \"dust\"\n vec3 dust_extinction = dust_absorption + dust_scattering;\n mediumInflow = dust_extinction * dust_inflow_rate * radial_falloff;\n mediumAlbedo = dust_scattering / dust_extinction;\n }\n \telse\n \t{\n // Apply thermal relaxation due to \"radiation loss\" \n T.r *= radiationLoss;\n }\n}\n","influence_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Apply any external forces to the fluid\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nvec3 externalForces(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL, // world-space extents of grid, and voxel-size\n in vec3 v, in float P, in vec4 T, // velocity, pressure, temperature at current voxel\n in vec3 medium) // medium density (extinction) at current voxel\n{\n // Boussinesq approximation (a la Fedkiw & Stam)\n float densityAvg = (medium.r + medium.g + medium.b)/3.0;\n float buoyancy_force = -densityAvg*gravity + buoyancy*(T.r - Tambient);\n return vec3(0.0, buoyancy_force, 0.0);\n}","collide_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify regions which contain impenetrable collider material\n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/******************************************************/\n/* mandatory function */\n/******************************************************/\n\nfloat collisionSDF(in vec3 wsP, // world space center of current voxel\n in float time, // time\n in vec3 L, in float dL) // world-space extents of grid, and voxel-size\n{\n // Regions which are solid obstacles have SDF < 0.0\n return 1.0e6;\n}","render_glsl":"//////////////////////////////////////////////////////////////////////////////////////////////////////\n// Specify the fluid emission field \n//////////////////////////////////////////////////////////////////////////////////////////////////////\n\n// Approximate map from temperature in Kelvin to blackbody emiss\n// Valid from 1000 to 40000 K (and additionally 0 for pure full white)\nvec3 colorTemperatureToRGB(const in float temperature)\n{\n // Values from: \n mat3 m = (temperature <= 6500.0) ? mat3(vec3(0.0, -2902.1955373783176, -8257.7997278925690),\n\t vec3(0.0, 1669.5803561666639, 2575.2827530017594),\n\t vec3(1.0, 1.3302673723350029, 1.8993753891711275)) : \n\t \t\t\t\t\t\t\t\t mat3(vec3(1745.0425298314172, 1216.6168361476490, -8257.7997278925690),\n \t vec3(-2666.3474220535695, -2173.1012343082230, 2575.2827530017594),\n\t vec3(0.55995389139931482, 0.70381203140554553, 1.8993753891711275)); \n return mix(clamp(vec3(m[0] / (vec3(clamp(temperature, 1000.0, 40000.0)) + m[1]) + m[2]), vec3(0.0), vec3(1.0)), \n vec3(1.0), \n smoothstep(1000.0, 0.0, temperature));\n}\n\n\n/******************************************************/\n/* mandatory functions */\n/******************************************************/\n\n// Specify how the temperature is mapped to the local emission radiance\nvec3 temperatureToEmission(in vec4 T)\n{\n vec3 emission = colorTemperatureToRGB(T.r * TtoKelvin) * pow(T.r/100.0, 4.0);\n \treturn emission;\n}\n\n// Optionally remap the medium density (extinction) and albedo\nvoid mediumRemap(inout vec3 medium,\n inout vec3 mediumAlbedo)\n{}\n\n// Specify the phase function of the scattering medium\nfloat phaseFunction(float mu, // cosine of angle between incident and scattered ray\n float anisotropy) // anisotropy coefficient\n{\n const float pi = 3.141592653589793;\n float g = anisotropy;\n float gSqr = g*g;\n return (1.0/(4.0*pi)) * (1.0 - gSqr) / pow(1.0 - 2.0*g*mu + gSqr, 1.5);\n}\n"}}

$TRINiTY

19,625 Aufrufe • vor 1 Jahr