├── dp.cfg ├── dp ├── sg │ ├── io │ │ ├── CSF │ │ │ ├── CMakeLists.txt │ │ │ └── Saver │ │ │ │ └── CMakeLists.txt │ │ ├── PLY │ │ │ ├── CMakeLists.txt │ │ │ └── Loader │ │ │ │ └── CMakeLists.txt │ │ ├── WRL │ │ │ ├── CMakeLists.txt │ │ │ └── Loader │ │ │ │ └── CMakeLists.txt │ │ ├── XML │ │ │ ├── CMakeLists.txt │ │ │ └── Loader │ │ │ │ └── CMakeLists.txt │ │ ├── Assimp │ │ │ └── CMakeLists.txt │ │ ├── HOOPS │ │ │ └── CMakeLists.txt │ │ ├── glTF │ │ │ └── CMakeLists.txt │ │ ├── DPAF │ │ │ ├── CMakeLists.txt │ │ │ ├── Loader │ │ │ │ └── CMakeLists.txt │ │ │ └── Saver │ │ │ │ └── CMakeLists.txt │ │ ├── DPBF │ │ │ ├── CMakeLists.txt │ │ │ ├── Loader │ │ │ │ └── CMakeLists.txt │ │ │ └── Saver │ │ │ │ └── CMakeLists.txt │ │ ├── IL │ │ │ ├── CMakeLists.txt │ │ │ ├── Saver │ │ │ │ └── CMakeLists.txt │ │ │ └── Loader │ │ │ │ └── CMakeLists.txt │ │ ├── OBJ │ │ │ ├── CMakeLists.txt │ │ │ └── Saver │ │ │ │ └── CMakeLists.txt │ │ └── CMakeLists.txt │ ├── renderer │ │ ├── CMakeLists.txt │ │ └── rix │ │ │ └── CMakeLists.txt │ ├── core │ │ ├── Camera.h │ │ └── src │ │ │ └── TextureHost.cpp │ ├── algorithm │ │ └── src │ │ │ └── RayIntersectTraverser.cpp │ ├── animation │ │ └── CMakeLists.txt │ ├── generator │ │ └── CMakeLists.txt │ ├── ui │ │ ├── CMakeLists.txt │ │ └── glut │ │ │ └── CMakeLists.txt │ ├── gl │ │ └── CMakeLists.txt │ └── xbar │ │ ├── culling │ │ └── CMakeLists.txt │ │ └── CMakeLists.txt ├── gl │ └── RenderTargetFBO.h ├── ui │ └── CMakeLists.txt ├── culling │ ├── cpu │ │ └── CMakeLists.txt │ ├── CMakeLists.txt │ └── opengl │ │ └── CMakeLists.txt ├── rix │ ├── core │ │ └── CMakeLists.txt │ └── CMakeLists.txt ├── fx │ ├── xml │ │ └── CMakeLists.txt │ └── glsl │ │ └── CMakeLists.txt ├── cuda │ └── CMakeLists.txt └── math │ └── CMakeLists.txt ├── apps ├── Tutorials │ └── CMakeLists.txt ├── Viewer │ ├── res │ │ ├── Viewer.rc │ │ ├── images │ │ │ ├── CgFX.png │ │ │ ├── Group.png │ │ │ ├── Lines.png │ │ │ ├── Node.png │ │ │ ├── Play.png │ │ │ ├── Quads.png │ │ │ ├── RTFx.png │ │ │ ├── Shape.png │ │ │ ├── Stop.png │ │ │ ├── Camera.png │ │ │ ├── Classes.png │ │ │ ├── Layout1.png │ │ │ ├── Layout2.png │ │ │ ├── Layout3.png │ │ │ ├── Layout4.png │ │ │ ├── Layout5.png │ │ │ ├── Layout6.png │ │ │ ├── Patches.png │ │ │ ├── Points.png │ │ │ ├── Redo_on.png │ │ │ ├── SceniX.ico │ │ │ ├── Stop_on.png │ │ │ ├── SubNode.png │ │ │ ├── Undo_on.png │ │ │ ├── Animation.png │ │ │ ├── DockClose.png │ │ │ ├── DockFloat.png │ │ │ ├── Drawable.png │ │ │ ├── ExpandAll.png │ │ │ ├── MainNode.png │ │ │ ├── Material.png │ │ │ ├── Normals_48.png │ │ │ ├── Options_48.png │ │ │ ├── Play_off.png │ │ │ ├── PointLight.png │ │ │ ├── Power_off.png │ │ │ ├── PushButton.png │ │ │ ├── QuadMeshes.png │ │ │ ├── RB_Checked.png │ │ │ ├── Redo_off.png │ │ │ ├── Shadows_48.png │ │ │ ├── SplitAbove.png │ │ │ ├── SplitBelow.png │ │ │ ├── SplitLeft.png │ │ │ ├── SplitRight.png │ │ │ ├── SpotLight.png │ │ │ ├── Transform.png │ │ │ ├── TriPatches.png │ │ │ ├── Triangles.png │ │ │ ├── Undo_off.png │ │ │ ├── ViewState.png │ │ │ ├── ZoomAll_48.png │ │ │ ├── branch_end.png │ │ │ ├── deletewin.png │ │ │ ├── editColor.png │ │ │ ├── Annotations.png │ │ │ ├── Antialias_48.png │ │ │ ├── CBT_Checked.png │ │ │ ├── CollapseAll.png │ │ │ ├── DefaultNode.png │ │ │ ├── LoadFile_32.png │ │ │ ├── LoadFile_48.png │ │ │ ├── LoadFile_off.png │ │ │ ├── Normals_off.png │ │ │ ├── QuadPatches.png │ │ │ ├── RB_Unchecked.png │ │ │ ├── SaveFile_32.png │ │ │ ├── SaveFile_48.png │ │ │ ├── SaveFile_off.png │ │ │ ├── ShadowsOn_48.png │ │ │ ├── StepBackward.png │ │ │ ├── StepForward.png │ │ │ ├── ZoomAll_off.png │ │ │ ├── branch_more.png │ │ │ ├── AntiAliasOff_48.png │ │ │ ├── AntiAliasOn_48.png │ │ │ ├── CBT_Unchecked.png │ │ │ ├── CameraOrbitX_on.png │ │ │ ├── CameraOrbitY_on.png │ │ │ ├── CameraOrbitZ_on.png │ │ │ ├── DirectedLight.png │ │ │ ├── FirstFrame_off.png │ │ │ ├── JumpFirstFrame.png │ │ │ ├── JumpLastFrame.png │ │ │ ├── LastFrame_off.png │ │ │ ├── LayoutFour_off.png │ │ │ ├── LayoutOne_off.png │ │ │ ├── LevelOfDetail.png │ │ │ ├── LinkParameter.png │ │ │ ├── LoopAnimation.png │ │ │ ├── NextFrame_off.png │ │ │ ├── ParallelCamera.png │ │ │ ├── RB_CheckedHover.png │ │ │ ├── ShadowsOff_48.png │ │ │ ├── TV_BranchClosed.png │ │ │ ├── TV_BranchOpened.png │ │ │ ├── UnlinkParameter.png │ │ │ ├── scroll_up_arrow.png │ │ │ ├── spherepreview.png │ │ │ ├── spin_down_arrow.png │ │ │ ├── spin_up_arrow.png │ │ │ ├── tab_top_border.png │ │ │ ├── twistedpreview.png │ │ │ ├── AddEnvironment_32.png │ │ │ ├── AddEnvironment_48.png │ │ │ ├── AnimatedTransform.png │ │ │ ├── CBT_CheckedHover.png │ │ │ ├── CameraCycling_off.png │ │ │ ├── CameraCycling_on.png │ │ │ ├── CameraOrbitXOn_48.png │ │ │ ├── CameraOrbitX_off.png │ │ │ ├── CameraOrbitYOn_48.png │ │ │ ├── CameraOrbitY_off.png │ │ │ ├── CameraOrbitZOn_48.png │ │ │ ├── CameraOrbitZ_off.png │ │ │ ├── FlipBookAnimation.png │ │ │ ├── LayoutTwoLeft_off.png │ │ │ ├── LayoutTwoTop_off.png │ │ │ ├── PerspectiveCamera.png │ │ │ ├── PingPongAnimation.png │ │ │ ├── PreviousFrame_off.png │ │ │ ├── PushButton_hover.png │ │ │ ├── Quadro_FX_Splash.png │ │ │ ├── RB_CheckedPressed.png │ │ │ ├── RB_UncheckedHover.png │ │ │ ├── TextureAttribute.png │ │ │ ├── scroll_down_arrow.png │ │ │ ├── scroll_left_arrow.png │ │ │ ├── spin_up_arrow_off.png │ │ │ ├── CBT_CheckedDisabled.png │ │ │ ├── CBT_CheckedPressed.png │ │ │ ├── CBT_UncheckedHover.png │ │ │ ├── CBT_UncheckedPressed.png │ │ │ ├── CameraIterationOn_48.png │ │ │ ├── CameraIteration_48.png │ │ │ ├── CameraOrbitXOff_48.png │ │ │ ├── CameraOrbitYOff_48.png │ │ │ ├── CameraOrbitZOff_48.png │ │ │ ├── ContRenderingOff_32.png │ │ │ ├── ContRenderingOff_48.png │ │ │ ├── ContRenderingOn_32.png │ │ │ ├── ContRenderingOn_48.png │ │ │ ├── LayoutThreeLeft_off.png │ │ │ ├── LayoutThreeTop_off.png │ │ │ ├── PushButton_default.png │ │ │ ├── PushButton_disabled.png │ │ │ ├── PushButton_pressed.png │ │ │ ├── RB_CheckedDisabled.png │ │ │ ├── RB_UncheckedDisabled.png │ │ │ ├── RB_UncheckedPressed.png │ │ │ ├── RTFxSceneAttribute.png │ │ │ ├── TV_BranchClosedHover.png │ │ │ ├── TV_BranchOpenedHover.png │ │ │ ├── TessellationPatch_48.png │ │ │ ├── branch_vertical_line.png │ │ │ ├── combobox_down_arrow.png │ │ │ ├── scroll_right_arrow.png │ │ │ ├── showHideAnnotations.png │ │ │ ├── spin_down_arrow_off.png │ │ │ ├── spin_up_arrow_hover.png │ │ │ ├── twistedpreview_grey.png │ │ │ ├── CBT_UncheckedDisabled.png │ │ │ ├── CameraIterationOff_48.png │ │ │ ├── CameraManipulatorOn_48.png │ │ │ ├── ContinuousRendering_on.png │ │ │ ├── SliderHandle_Vertical.png │ │ │ ├── checkbox_indeterminate.png │ │ │ ├── scroll_up_arrow_hover.png │ │ │ ├── spin_down_arrow_hover.png │ │ │ ├── spin_up_arrow_pressed.png │ │ │ ├── CameraManipulatorOff_48.png │ │ │ ├── ContinuousRendering_off.png │ │ │ ├── PushButton_default_hover.png │ │ │ ├── RayTracingBufferAttribute.png │ │ │ ├── SliderHandle_Horizontal.png │ │ │ ├── ToggleAnimationDirection.png │ │ │ ├── WalkCameraManipulator_off.png │ │ │ ├── WalkCameraManipulator_on.png │ │ │ ├── scroll_down_arrow_hover.png │ │ │ ├── scroll_down_arrow_pressed.png │ │ │ ├── scroll_left_arrow_hover.png │ │ │ ├── scroll_left_arrow_pressed.png │ │ │ ├── scroll_right_arrow_hover.png │ │ │ ├── scroll_up_arrow_pressed.png │ │ │ ├── spin_down_arrow_pressed.png │ │ │ ├── tab_top_border_selected.png │ │ │ ├── tab_top_border_unselected.png │ │ │ ├── FlightCameraManipulator_off.png │ │ │ ├── FlightCameraManipulator_on.png │ │ │ ├── SliderHandle_VerticalHover.png │ │ │ ├── WalkCameraManipulatorOff_48.png │ │ │ ├── WalkCameraManipulatorOn_48.png │ │ │ ├── scroll_right_arrow_pressed.png │ │ │ ├── tab_bottom_border_selected.png │ │ │ ├── FlightCameraManipulatorOff_48.png │ │ │ ├── FlightCameraManipulatorOn_48.png │ │ │ ├── SliderHandle_HorizontalHover.png │ │ │ ├── SliderHandle_VerticalDisabled.png │ │ │ ├── TrackballCameraManipulator_off.png │ │ │ ├── TrackballCameraManipulator_on.png │ │ │ ├── checkbox_indeterminate_hover.png │ │ │ ├── checkbox_indeterminate_pressed.png │ │ │ ├── tab_bottom_border_unselected.png │ │ │ ├── tab_top_border_selected_hover.png │ │ │ ├── CylindricalCameraManipulator_off.png │ │ │ ├── CylindricalCameraManipulator_on.png │ │ │ ├── SliderHandle_HorizontalDisabled.png │ │ │ ├── TrackballCameraManipulatorOff_48.png │ │ │ ├── TrackballCameraManipulatorOn_48.png │ │ │ ├── tab_top_border_unselected_hover.png │ │ │ ├── CylindricalCameraManipulatorOff_48.png │ │ │ ├── CylindricalCameraManipulatorOn_48.png │ │ │ └── tab_bottom_border_unselected_hover.png │ │ ├── stencilToColorFragment.glsl │ │ ├── stencilToColorVertex.glsl │ │ ├── highlightVertex.glsl │ │ ├── tonemapVertex.glsl │ │ ├── tonemapFragment.glsl │ │ ├── highlightFragment.glsl │ │ └── ui │ │ │ └── HelpAbout.html │ └── src │ │ └── SmoothDialog.cpp ├── QtMinimal │ └── mono.png ├── GLUTMinimal │ └── benchmark │ │ ├── example-params.txt │ │ └── benchmark.cmd ├── GLUTMinimalCFR │ └── benchmark │ │ ├── example-params.txt │ │ └── benchmark.cmd ├── MaterialExchanger │ └── materialNameMapping.xml └── CMakeLists.txt ├── 3rdPartyBuild.cmd ├── test ├── scripts │ ├── CMakeLists.txt │ └── scene_benchmark │ │ └── calc_FPS.py ├── rix │ ├── core │ │ ├── helpers │ │ │ ├── SimplexNoise1234.h │ │ │ ├── src │ │ │ │ └── SimplexNoise1234.cpp │ │ │ └── CMakeLists.txt │ │ ├── CMakeLists.txt │ │ └── framework │ │ │ └── CMakeLists.txt │ ├── gl │ │ ├── modules │ │ │ ├── rix_tests │ │ │ │ ├── textures │ │ │ │ │ └── nvlobby_cube_mipmap.dds │ │ │ │ ├── feature_tangent_space │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_cubemap_from_file │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_cylinder_derivatives │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_transformAttribute │ │ │ │ │ └── CMakeLists.txt │ │ │ │ └── CMakeLists.txt │ │ │ ├── gl_feature_tests │ │ │ │ ├── feature_texture_cube_maps │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_FBO │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_FBO_MRT │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_rix_api │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_textures │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_FBO_native │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_texture_buffer │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_texture_native │ │ │ │ │ └── CMakeLists.txt │ │ │ │ ├── feature_texture_sampler │ │ │ │ │ └── CMakeLists.txt │ │ │ │ └── CMakeLists.txt │ │ │ └── benchmarks │ │ │ │ ├── benchmark_vertexThroughput │ │ │ │ └── CMakeLists.txt │ │ │ │ └── CMakeLists.txt │ │ └── CMakeLists.txt │ └── CMakeLists.txt ├── testfw │ ├── generator │ │ ├── sgrdr_geosphere │ │ │ ├── __config.cfg │ │ │ └── CMakeLists.txt │ │ ├── rixgl_blank │ │ │ ├── __config.cfg │ │ │ └── CMakeLists.txt │ │ ├── rixgl_triangle │ │ │ ├── __config.cfg │ │ │ └── CMakeLists.txt │ │ └── rixgl_spheres │ │ │ ├── __config.cfg │ │ │ └── CMakeLists.txt │ ├── CMakeLists.txt │ ├── manager │ │ └── CMakeLists.txt │ └── app │ │ └── CMakeLists.txt ├── CMakeLists.txt └── sgrdr │ ├── CMakeLists.txt │ └── modules │ └── sg_benchmarks │ ├── benchmark_model │ └── CMakeLists.txt │ └── CMakeLists.txt ├── media ├── dpfx │ ├── mdl │ │ ├── depthPass_fs.glsl │ │ ├── square.glsl │ │ ├── saturate.glsl │ │ ├── average.glsl │ │ ├── mdl_math_normalize.glsl │ │ ├── dfTint.glsl │ │ ├── mdl_base_glossToRough.glsl │ │ ├── mdl_math_maxValue.glsl │ │ ├── mdl_math_minValue.glsl │ │ ├── mdl_df_tint.glsl │ │ ├── mdl_math_length.glsl │ │ ├── mdl_df_weightedLayer.glsl │ │ ├── mdl_state_textureTangentU.glsl │ │ ├── mdl_state_textureTangentV.glsl │ │ ├── mdl_state_textureCoordinate.glsl │ │ ├── mdl_base_architecturalGlossToRough.glsl │ │ ├── depthPass_vs.glsl │ │ ├── mdl_base_abbeNumberIOR.glsl │ │ ├── mdl_df_bsdfComponent.glsl │ │ ├── mdl_materialEmission.glsl │ │ ├── mdl_materialSurface.glsl │ │ ├── mdl_math_luminance.glsl │ │ ├── mdl_df_directionalFactor.glsl │ │ ├── orthonormalize.glsl │ │ ├── cube.glsl │ │ ├── mdl_base_textureCoordinateInfo.glsl │ │ ├── sellmeierCoefficientsIOR.glsl │ │ ├── mdl_vs.glsl │ │ ├── mdl_df_customCurveLayer.glsl │ │ ├── depthPassCutout_fs.glsl │ │ ├── mdl_base_gradient3Texture.glsl │ │ ├── mdl_df_measuredCurveLayer.glsl │ │ ├── mdl_base_transformCoordinate.glsl │ │ ├── monoChannel.glsl │ │ ├── mdl_df_diffuseTransmissionBSDF.glsl │ │ ├── mdl_base_colorLayer.glsl │ │ ├── mdl_df_normalizedMix.glsl │ │ ├── mdl_base_anisotropyConversion.glsl │ │ ├── mdl_df_clampedMix.glsl │ │ ├── mdl_base_flowNoiseTexture.glsl │ │ ├── mdl_df_measuredCurveFactor.glsl │ │ ├── mdl_math_blackbody.glsl │ │ ├── mdl_base_coordinateSource.glsl │ │ ├── mdl_base_rotationTranslationScale.glsl │ │ ├── mdl_base_worleyNoiseTexture.glsl │ │ ├── evalCubeMap.glsl │ │ ├── mdl_base_fileTexture.glsl │ │ ├── specularReflectionBSDF.glsl │ │ ├── mdl_base_perlinNoiseTexture.glsl │ │ ├── applyNoiseModifications.glsl │ │ ├── summedPerlinNoise.glsl │ │ ├── specularTransmissionBSDF.glsl │ │ ├── random255.glsl │ │ ├── mdl_base_flakeNoiseBumpTexture.glsl │ │ ├── mdl_base_gradient3BumpTexture.glsl │ │ ├── mdl_base_flowNoiseBumpTexture.glsl │ │ ├── mdl_base_checkerBumpTexture.glsl │ │ ├── mdl_base_flakeNoiseTexture.glsl │ │ ├── mdl_base_tileTexture.glsl │ │ ├── evalEnvironmentMap.glsl │ │ ├── mdl_base_worleyNoiseBumpTexture.glsl │ │ └── mdl_base_checkerTexture.glsl │ ├── passThroughPosition_vs.glsl │ ├── emitColor.glsl │ ├── emitColorDepth.glsl │ ├── oitAllClear_fs.glsl │ ├── oitClosestListClear_fs.glsl │ ├── emitColorOITAllCounter.glsl │ └── oitAllResolveCounters_fs.glsl ├── effects │ └── xml │ │ ├── standard_material │ │ └── glsl │ │ │ ├── gl_PerVertex.glsl │ │ │ ├── trivial_depth_pass_fs.glsl │ │ │ ├── pass_through_v3f_n3f_vs.glsl │ │ │ ├── pass_through_v3f_n3f_tex0_vs.glsl │ │ │ ├── standard_material_depth_pass_vs.glsl │ │ │ ├── standard_material_t2_v3f_n3f_tcs.glsl │ │ │ ├── standard_material_v3f_n3f_vs.glsl │ │ │ ├── standard_material_t2_v3f_n3f_tex0_tcs.glsl │ │ │ ├── standard_material_v3f_n3f_tex0_vs.glsl │ │ │ ├── standard_material_v3f_n3f_tex0_ta3f_bi3f_vs.glsl │ │ │ ├── calculateTessLevels_t2.glsl │ │ │ ├── BezierTriangle.glsl │ │ │ └── pntriangles_v3f_n3f_tes.glsl │ │ ├── visualize_normal │ │ └── glsl │ │ │ └── normal_fs.glsl │ │ ├── visualize_tangent │ │ └── glsl │ │ │ └── tangent_fs.glsl │ │ ├── visualize_binormal │ │ └── glsl │ │ │ └── binormal_fs.glsl │ │ ├── environment │ │ ├── environmentBackdropVertex.glsl │ │ └── environmentBackdropFragment.glsl │ │ ├── terrain │ │ └── glsl │ │ │ ├── terrain_vs_gs.glsl │ │ │ ├── terrain_ts_vs.glsl │ │ │ └── terrain_ts_tc.glsl │ │ ├── visualize_normal.xml │ │ ├── collada │ │ └── glsl │ │ │ ├── colladaDepthPass_fs.glsl │ │ │ ├── colladaCommonTexture.glsl │ │ │ └── colladaCommonBumpmap.glsl │ │ ├── visualize_tangent.xml │ │ ├── visualize_binormal.xml │ │ ├── carpaint │ │ └── glsl │ │ │ └── eval_glossy.glsl │ │ ├── thinglass.xml │ │ └── environment.xml └── textures │ └── spheremaps │ └── spherical_checker.png ├── 3rdparty ├── patches │ ├── fltlib-1.0.zip │ ├── tinyxml_2_6_2.zip │ └── lib3ds-20080909.zip └── CMakeLists.txt ├── .gitmodules └── CMake ├── dp.cmake ├── FindNVHOOPS3D.cmake ├── FindNVTinyXML.cmake ├── FindNVlib3ds.cmake ├── CopyFile.cmake ├── FindNVfltLib.cmake └── FindNVOpenEXR.cmake /dp.cfg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /dp/sg/io/CSF/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Saver ) -------------------------------------------------------------------------------- /dp/sg/io/PLY/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/io/WRL/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/io/XML/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/io/Assimp/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/io/HOOPS/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/io/glTF/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) -------------------------------------------------------------------------------- /dp/sg/renderer/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory("rix") 2 | -------------------------------------------------------------------------------- /dp/sg/renderer/rix/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( "gl" ) 2 | -------------------------------------------------------------------------------- /apps/Tutorials/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_Subdirectory(001_Render_Scene) 2 | -------------------------------------------------------------------------------- /apps/Viewer/res/Viewer.rc: -------------------------------------------------------------------------------- 1 | IDI_ICON1 ICON "images\\SceniX.ico" 2 | 3 | -------------------------------------------------------------------------------- /3rdPartyBuild.cmd: -------------------------------------------------------------------------------- 1 | cmake -P 3rdPartyBuild.cmake -DCMAKE_INSTALL_PREFIX="3rdparty" 2 | -------------------------------------------------------------------------------- /dp/sg/io/DPAF/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( Loader ) 2 | add_subdirectory( Saver ) -------------------------------------------------------------------------------- /test/scripts/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | file(WRITE test_launch_site.txt "${DP_TEST_LAUNCH_SITE}") -------------------------------------------------------------------------------- /dp/sg/core/Camera.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/dp/sg/core/Camera.h -------------------------------------------------------------------------------- /media/dpfx/mdl/depthPass_fs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | emitColor( vec4(0) ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/square.glsl: -------------------------------------------------------------------------------- 1 | float square( in float x ) 2 | { 3 | return( x * x ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /apps/QtMinimal/mono.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/QtMinimal/mono.png -------------------------------------------------------------------------------- /dp/gl/RenderTargetFBO.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/dp/gl/RenderTargetFBO.h -------------------------------------------------------------------------------- /media/dpfx/mdl/saturate.glsl: -------------------------------------------------------------------------------- 1 | float saturate( in float x ) 2 | { 3 | return( clamp( x, 0.0f, 1.0f ) ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /3rdparty/patches/fltlib-1.0.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/3rdparty/patches/fltlib-1.0.zip -------------------------------------------------------------------------------- /apps/Viewer/res/images/CgFX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CgFX.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Group.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Lines.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Lines.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Node.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Node.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Play.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Quads.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Quads.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RTFx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RTFx.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Shape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Shape.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Stop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Stop.png -------------------------------------------------------------------------------- /apps/Viewer/src/SmoothDialog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/src/SmoothDialog.cpp -------------------------------------------------------------------------------- /dp/sg/core/src/TextureHost.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/dp/sg/core/src/TextureHost.cpp -------------------------------------------------------------------------------- /media/dpfx/mdl/average.glsl: -------------------------------------------------------------------------------- 1 | float average( in vec3 v ) 2 | { 3 | return( ( v.x + v.y + v.z ) / 3.0f ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /3rdparty/patches/tinyxml_2_6_2.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/3rdparty/patches/tinyxml_2_6_2.zip -------------------------------------------------------------------------------- /apps/Viewer/res/images/Camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Camera.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Classes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Classes.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout1.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout2.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout3.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout4.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout5.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Layout6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Layout6.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Patches.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Patches.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Points.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Points.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Redo_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Redo_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SceniX.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SceniX.ico -------------------------------------------------------------------------------- /apps/Viewer/res/images/Stop_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Stop_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SubNode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SubNode.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Undo_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Undo_on.png -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/gl_PerVertex.glsl: -------------------------------------------------------------------------------- 1 | out gl_PerVertex 2 | { 3 | vec4 gl_Position; 4 | }; 5 | 6 | -------------------------------------------------------------------------------- /3rdparty/patches/lib3ds-20080909.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/3rdparty/patches/lib3ds-20080909.zip -------------------------------------------------------------------------------- /apps/Viewer/res/images/Animation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Animation.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/DockClose.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/DockClose.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/DockFloat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/DockFloat.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Drawable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Drawable.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ExpandAll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ExpandAll.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/MainNode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/MainNode.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Material.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Material.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Normals_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Normals_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Options_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Options_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Play_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Play_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PointLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PointLight.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Power_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Power_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/QuadMeshes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/QuadMeshes.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_Checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_Checked.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Redo_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Redo_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Shadows_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Shadows_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SplitAbove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SplitAbove.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SplitBelow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SplitBelow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SplitLeft.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SplitLeft.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SplitRight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SplitRight.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SpotLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SpotLight.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Transform.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Transform.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TriPatches.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TriPatches.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Triangles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Triangles.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Undo_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Undo_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ViewState.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ViewState.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ZoomAll_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ZoomAll_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/branch_end.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/branch_end.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/deletewin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/deletewin.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/editColor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/editColor.png -------------------------------------------------------------------------------- /apps/Viewer/res/stencilToColorFragment.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | Color = vec4( 1.0f, 1.0f, 1.0f, 1.0f ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_normalize.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_math_normalize( in vec3 a ) 2 | { 3 | return( a / mdl_math_length( a ) ); 4 | } 5 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/trivial_depth_pass_fs.glsl: -------------------------------------------------------------------------------- 1 | void main(void) 2 | { 3 | emitColor( vec4(1) ); 4 | } 5 | -------------------------------------------------------------------------------- /apps/Viewer/res/images/Annotations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Annotations.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Antialias_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Antialias_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_Checked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_Checked.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CollapseAll.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CollapseAll.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/DefaultNode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/DefaultNode.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LoadFile_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LoadFile_32.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LoadFile_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LoadFile_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LoadFile_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LoadFile_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Normals_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Normals_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/QuadPatches.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/QuadPatches.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_Unchecked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_Unchecked.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SaveFile_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SaveFile_32.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SaveFile_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SaveFile_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SaveFile_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SaveFile_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ShadowsOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ShadowsOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/StepBackward.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/StepBackward.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/StepForward.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/StepForward.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ZoomAll_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ZoomAll_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/branch_more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/branch_more.png -------------------------------------------------------------------------------- /media/dpfx/mdl/dfTint.glsl: -------------------------------------------------------------------------------- 1 | vec4 dfTint( in vec3 tint, in vec4 base ) 2 | { 3 | return( vec4( tint * base.rgb, base.a ) ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /apps/Viewer/res/images/AntiAliasOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/AntiAliasOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/AntiAliasOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/AntiAliasOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_Unchecked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_Unchecked.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitX_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitX_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitY_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitY_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitZ_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitZ_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/DirectedLight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/DirectedLight.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FirstFrame_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FirstFrame_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/JumpFirstFrame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/JumpFirstFrame.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/JumpLastFrame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/JumpLastFrame.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LastFrame_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LastFrame_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutFour_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutFour_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutOne_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutOne_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LevelOfDetail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LevelOfDetail.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LinkParameter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LinkParameter.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LoopAnimation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LoopAnimation.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/NextFrame_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/NextFrame_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ParallelCamera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ParallelCamera.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_CheckedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_CheckedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ShadowsOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ShadowsOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TV_BranchClosed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TV_BranchClosed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TV_BranchOpened.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TV_BranchOpened.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/UnlinkParameter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/UnlinkParameter.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_up_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_up_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spherepreview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spherepreview.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_down_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_down_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_up_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_up_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_top_border.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_top_border.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/twistedpreview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/twistedpreview.png -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_glossToRough.glsl: -------------------------------------------------------------------------------- 1 | float mdl_base_glossToRough( in float glossines ) 2 | { 3 | return( 1 - glossines ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_maxValue.glsl: -------------------------------------------------------------------------------- 1 | 2 | float mdl_math_maxValue( in vec3 a ) 3 | { 4 | return( max( max( a.x, a.y ), a.z ) ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_minValue.glsl: -------------------------------------------------------------------------------- 1 | 2 | float mdl_math_minValue( in vec3 a ) 3 | { 4 | return( min( min( a.x, a.y ), a.z ) ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/passThroughPosition_vs.glsl: -------------------------------------------------------------------------------- 1 | #version 410 compatibility 2 | 3 | void main() 4 | { 5 | gl_Position = gl_Vertex; 6 | } 7 | -------------------------------------------------------------------------------- /test/rix/core/helpers/SimplexNoise1234.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/test/rix/core/helpers/SimplexNoise1234.h -------------------------------------------------------------------------------- /apps/Viewer/res/images/AddEnvironment_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/AddEnvironment_32.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/AddEnvironment_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/AddEnvironment_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/AnimatedTransform.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/AnimatedTransform.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_CheckedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_CheckedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraCycling_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraCycling_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraCycling_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraCycling_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitXOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitXOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitX_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitX_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitYOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitYOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitY_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitY_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitZOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitZOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitZ_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitZ_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FlipBookAnimation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FlipBookAnimation.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutTwoLeft_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutTwoLeft_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutTwoTop_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutTwoTop_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PerspectiveCamera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PerspectiveCamera.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PingPongAnimation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PingPongAnimation.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PreviousFrame_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PreviousFrame_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/Quadro_FX_Splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/Quadro_FX_Splash.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_CheckedPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_CheckedPressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_UncheckedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_UncheckedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TextureAttribute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TextureAttribute.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_down_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_down_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_left_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_left_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_up_arrow_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_up_arrow_off.png -------------------------------------------------------------------------------- /dp/sg/io/DPBF/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ) 2 | 3 | add_subdirectory( Loader ) 4 | add_subdirectory( Saver ) -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_tint.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_tint( in vec3 tint, in vec4 base ) 2 | { 3 | return( vec4( tint * base.rgb, base.a ) ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_CheckedDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_CheckedDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_CheckedPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_CheckedPressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_UncheckedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_UncheckedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_UncheckedPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_UncheckedPressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraIterationOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraIterationOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraIteration_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraIteration_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitXOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitXOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitYOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitYOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraOrbitZOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraOrbitZOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContRenderingOff_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContRenderingOff_32.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContRenderingOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContRenderingOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContRenderingOn_32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContRenderingOn_32.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContRenderingOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContRenderingOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutThreeLeft_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutThreeLeft_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/LayoutThreeTop_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/LayoutThreeTop_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton_default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton_default.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton_disabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton_disabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_CheckedDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_CheckedDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_UncheckedDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_UncheckedDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RB_UncheckedPressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RB_UncheckedPressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RTFxSceneAttribute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RTFxSceneAttribute.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TV_BranchClosedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TV_BranchClosedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TV_BranchOpenedHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TV_BranchOpenedHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TessellationPatch_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TessellationPatch_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/branch_vertical_line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/branch_vertical_line.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/combobox_down_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/combobox_down_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_right_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_right_arrow.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/showHideAnnotations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/showHideAnnotations.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_down_arrow_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_down_arrow_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_up_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_up_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/twistedpreview_grey.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/twistedpreview_grey.png -------------------------------------------------------------------------------- /dp/sg/algorithm/src/RayIntersectTraverser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/dp/sg/algorithm/src/RayIntersectTraverser.cpp -------------------------------------------------------------------------------- /dp/sg/io/IL/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package( DevIL ) 2 | 3 | if (IL_FOUND) 4 | add_subdirectory( Loader ) 5 | add_subdirectory( Saver ) 6 | endif() -------------------------------------------------------------------------------- /media/textures/spheremaps/spherical_checker.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/media/textures/spheremaps/spherical_checker.png -------------------------------------------------------------------------------- /test/rix/core/helpers/src/SimplexNoise1234.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/test/rix/core/helpers/src/SimplexNoise1234.cpp -------------------------------------------------------------------------------- /apps/Viewer/res/images/CBT_UncheckedDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CBT_UncheckedDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraIterationOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraIterationOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraManipulatorOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraManipulatorOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContinuousRendering_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContinuousRendering_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_Vertical.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_Vertical.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/checkbox_indeterminate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/checkbox_indeterminate.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_up_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_up_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_down_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_down_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_up_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_up_arrow_pressed.png -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_length.glsl: -------------------------------------------------------------------------------- 1 | float mdl_math_length( in vec3 a ) 2 | { 3 | return( sqrt( square( a.x ) + square( a.y ) + square( a.z ) ) ); 4 | } 5 | -------------------------------------------------------------------------------- /apps/Viewer/res/images/CameraManipulatorOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CameraManipulatorOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ContinuousRendering_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ContinuousRendering_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/PushButton_default_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/PushButton_default_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/RayTracingBufferAttribute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/RayTracingBufferAttribute.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_Horizontal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_Horizontal.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/ToggleAnimationDirection.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/ToggleAnimationDirection.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/WalkCameraManipulator_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/WalkCameraManipulator_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/WalkCameraManipulator_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/WalkCameraManipulator_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_down_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_down_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_down_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_down_arrow_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_left_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_left_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_left_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_left_arrow_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_right_arrow_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_right_arrow_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_up_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_up_arrow_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/spin_down_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/spin_down_arrow_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_top_border_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_top_border_selected.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_top_border_unselected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_top_border_unselected.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FlightCameraManipulator_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FlightCameraManipulator_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FlightCameraManipulator_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FlightCameraManipulator_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_VerticalHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_VerticalHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/WalkCameraManipulatorOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/WalkCameraManipulatorOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/WalkCameraManipulatorOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/WalkCameraManipulatorOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/scroll_right_arrow_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/scroll_right_arrow_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_bottom_border_selected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_bottom_border_selected.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FlightCameraManipulatorOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FlightCameraManipulatorOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/FlightCameraManipulatorOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/FlightCameraManipulatorOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_HorizontalHover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_HorizontalHover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_VerticalDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_VerticalDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TrackballCameraManipulator_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TrackballCameraManipulator_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TrackballCameraManipulator_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TrackballCameraManipulator_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/checkbox_indeterminate_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/checkbox_indeterminate_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/checkbox_indeterminate_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/checkbox_indeterminate_pressed.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_bottom_border_unselected.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_bottom_border_unselected.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_top_border_selected_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_top_border_selected_hover.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CylindricalCameraManipulator_off.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CylindricalCameraManipulator_off.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CylindricalCameraManipulator_on.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CylindricalCameraManipulator_on.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/SliderHandle_HorizontalDisabled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/SliderHandle_HorizontalDisabled.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TrackballCameraManipulatorOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TrackballCameraManipulatorOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/TrackballCameraManipulatorOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/TrackballCameraManipulatorOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_top_border_unselected_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_top_border_unselected_hover.png -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/pass_through_v3f_n3f_vs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | vPosition = attrPosition.xyz; 5 | vNormal = attrNormal; 6 | } 7 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_normal/glsl/normal_fs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | vec3 ns = normalize(varNormal); 5 | Color = vec4(ns * 0.5 + 0.5, 1.0); 6 | } 7 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_tangent/glsl/tangent_fs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | vec3 t = normalize(varTangent); 5 | Color = vec4(t * 0.5 + 0.5, 1.0); 6 | } 7 | -------------------------------------------------------------------------------- /apps/Viewer/res/images/CylindricalCameraManipulatorOff_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CylindricalCameraManipulatorOff_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/CylindricalCameraManipulatorOn_48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/CylindricalCameraManipulatorOn_48.png -------------------------------------------------------------------------------- /apps/Viewer/res/images/tab_bottom_border_unselected_hover.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/apps/Viewer/res/images/tab_bottom_border_unselected_hover.png -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_weightedLayer.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_weightedLayer( in float weight, in vec4 layer, in vec4 base ) 2 | { 3 | return( mix( base, layer, weight ) ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_state_textureTangentU.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_state_textureTangentU( int textureSpace ) 2 | { 3 | // need to assert on textureSpace == 0 4 | return( tangent ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_state_textureTangentV.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_state_textureTangentV( int textureSpace ) 2 | { 3 | // need to assert on textureSpace == 0 4 | return( binormal ); 5 | } 6 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_binormal/glsl/binormal_fs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | vec3 b = normalize(varBinormal); 5 | Color = vec4(b * 0.5 + 0.5, 1.0); 6 | } 7 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/textures/nvlobby_cube_mipmap.dds: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nvpro-pipeline/pipeline/HEAD/test/rix/gl/modules/rix_tests/textures/nvlobby_cube_mipmap.dds -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_state_textureCoordinate.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_state_textureCoordinate( int textureSpace ) 2 | { 3 | // need to assert on textureSpace == 0 4 | return( texCoord0 ); 5 | } 6 | -------------------------------------------------------------------------------- /apps/Viewer/res/stencilToColorVertex.glsl: -------------------------------------------------------------------------------- 1 | out gl_PerVertex 2 | { 3 | vec4 gl_Position; 4 | }; 5 | 6 | void main(void) 7 | { 8 | gl_Position = attrPosition; 9 | } 10 | -------------------------------------------------------------------------------- /test/rix/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | SET( DPT_COVER_RIXGL ON CACHE BOOL "Include test framework for RiXGL" ) 2 | 3 | add_subdirectory( core ) 4 | 5 | if ( DPT_COVER_RIXGL ) 6 | add_subdirectory( gl ) 7 | endif() 8 | -------------------------------------------------------------------------------- /apps/GLUTMinimal/benchmark/example-params.txt: -------------------------------------------------------------------------------- 1 | param1;--shadermanager rixfx:ssbo140 --renderengine VBO --headlight --duration 2 2 | param1;--shadermanager rixfx:ssbo140 --renderengine Bindless --headlight --duration 2 3 | -------------------------------------------------------------------------------- /apps/Viewer/res/highlightVertex.glsl: -------------------------------------------------------------------------------- 1 | out gl_PerVertex 2 | { 3 | vec4 gl_Position; 4 | }; 5 | 6 | void main(void) 7 | { 8 | varTexCoord0 = attrTexCoord0; 9 | gl_Position = attrPosition; 10 | } 11 | -------------------------------------------------------------------------------- /apps/Viewer/res/tonemapVertex.glsl: -------------------------------------------------------------------------------- 1 | out gl_PerVertex 2 | { 3 | vec4 gl_Position; 4 | }; 5 | 6 | void main(void) 7 | { 8 | varTexCoord0 = attrTexCoord0; 9 | gl_Position = attrPosition; 10 | } 11 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/pass_through_v3f_n3f_tex0_vs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | vPosition = attrPosition.xyz; 5 | vNormal = attrNormal; 6 | vTexCoord0 = attrTexCoord0; 7 | } 8 | -------------------------------------------------------------------------------- /apps/GLUTMinimalCFR/benchmark/example-params.txt: -------------------------------------------------------------------------------- 1 | param1;--shadermanager rixfx:ssbo140 --renderengine VBO --headlight --duration 2 2 | param1;--shadermanager rixfx:ssbo140 --renderengine Bindless --headlight --duration 2 3 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_depth_pass_vs.glsl: -------------------------------------------------------------------------------- 1 | void main(void) 2 | { 3 | varTexCoord0 = attrTexCoord0; 4 | gl_Position = sys_ViewProjMatrix * sys_WorldMatrix * attrPosition; 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_architecturalGlossToRough.glsl: -------------------------------------------------------------------------------- 1 | float mdl_base_architecturalGlossToRough( in float glossiness ) 2 | { 3 | return( ( 1.0 <= glossiness ) ? 0.0 : sqrt( 2.0 * exp2( -4.0 - 14.0 * glossiness ) ) ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/depthPass_vs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | stateNormal = normalize( attrNormal ); 5 | evalTemporaries(stateNormal); 6 | worldPos = evalWorldPos(); 7 | gl_Position = sys_ViewProjMatrix * worldPos; 8 | } 9 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_abbeNumberIOR.glsl: -------------------------------------------------------------------------------- 1 | // TODO: compute spectral ior based on float ior and abbe number 2 | vec3 mdl_base_abbeNumberIOR( in float ior, in float abbeNumber ) 3 | { 4 | return( vec3( ior, ior, ior ) ); 5 | } 6 | 7 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_bsdfComponent.glsl: -------------------------------------------------------------------------------- 1 | _df_bsdfComponent mdl_df_bsdfComponent( in float weight, in vec4 component ) 2 | { 3 | _df_bsdfComponent bc; 4 | bc.weight = weight; 5 | bc.component = component; 6 | return( bc ); 7 | } 8 | 9 | -------------------------------------------------------------------------------- /media/effects/xml/environment/environmentBackdropVertex.glsl: -------------------------------------------------------------------------------- 1 | out gl_PerVertex 2 | { 3 | vec4 gl_Position; 4 | }; 5 | 6 | void main(void) 7 | { 8 | gl_Position = attrPosition; 9 | varTexCoord0 = attrTexCoord2.xyz; 10 | } 11 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_materialEmission.glsl: -------------------------------------------------------------------------------- 1 | _materialEmission mdl_materialEmission( in vec4 emission, in vec3 intensity, int mode ) 2 | { 3 | _materialEmission mi; 4 | mi.emission = emission; 5 | mi.intensity = intensity; 6 | return( mi ); 7 | } 8 | 9 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_materialSurface.glsl: -------------------------------------------------------------------------------- 1 | _materialSurface mdl_materialSurface( in vec4 scattering, in _materialEmission emission ) 2 | { 3 | _materialSurface ms; 4 | ms.scattering = scattering; 5 | ms.emission = emission; 6 | return( ms ); 7 | } 8 | 9 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_luminance.glsl: -------------------------------------------------------------------------------- 1 | float mdl_math_luminance( in vec3 v ) 2 | { 3 | // Luma coefficients according to ITU-R Recommendation BT.709 (http://en.wikipedia.org/wiki/Rec._709) 4 | return( 0.2126f * v.r + 0.7152f * v.g + 0.0722f * v.b ); 5 | } 6 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_directionalFactor.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_directionalFactor( in vec3 normalTint, in vec3 grazingTint, in float exponent, in vec4 base ) 2 | { 3 | return( vec4( mix( normalTint, grazingTint, pow( 1.0f - max( 0.0f, dot( stateNormal, viewDir ) ), exponent ) ), 1.0f ) * base ); 4 | } 5 | 6 | -------------------------------------------------------------------------------- /apps/MaterialExchanger/materialNameMapping.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /media/dpfx/mdl/orthonormalize.glsl: -------------------------------------------------------------------------------- 1 | vec3 orthonormalize( in vec3 v0, in vec3 v1 ) 2 | { 3 | // determine the orthogonal projection of v1 on v0 : ( v0 * v1 ) * v0 4 | // and subtract it from v1 resulting in the orthogonalized version of v1 5 | return( normalize( v1 - dot( v0, v1 ) * v0 ) ); 6 | } 7 | 8 | -------------------------------------------------------------------------------- /media/dpfx/mdl/cube.glsl: -------------------------------------------------------------------------------- 1 | float cube( in float x ) 2 | { 3 | return( x * x * x ); 4 | } 5 | 6 | vec2 cube( in vec2 x ) 7 | { 8 | return( x * x * x ); 9 | } 10 | 11 | vec3 cube( in vec3 x ) 12 | { 13 | return( x * x * x ); 14 | } 15 | 16 | vec4 cube( in vec4 x ) 17 | { 18 | return( x * x * x ); 19 | } 20 | 21 | -------------------------------------------------------------------------------- /media/effects/xml/terrain/glsl/terrain_vs_gs.glsl: -------------------------------------------------------------------------------- 1 | out ivec2 gridPosition; 2 | 3 | void main(void) 4 | { 5 | ivec2 heightMapSize = textureSize( heightMap, 0 ); 6 | 7 | gridPosition.y = gl_VertexID / (heightMapSize.x - 1); 8 | gridPosition.x = gl_VertexID - (gridPosition.y * (heightMapSize.y - 1)); 9 | } 10 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "tinyxml2"] 2 | path = tinyxml2 3 | url = https://github.com/leethomason/tinyxml2.git 4 | [submodule "3rdparty/jsoncpp"] 5 | path = 3rdparty/jsoncpp 6 | url = https://github.com/open-source-parsers/jsoncpp.git 7 | [submodule "3rdparty/assimp"] 8 | path = 3rdparty/assimp 9 | url = https://github.com/assimp/assimp.git 10 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_textureCoordinateInfo.glsl: -------------------------------------------------------------------------------- 1 | _base_textureCoordinateInfo mdl_base_textureCoordinateInfo( in vec3 pos, in vec3 tangentU, in vec3 tangentV ) 2 | { 3 | _base_textureCoordinateInfo tci; 4 | tci.position = pos; 5 | tci.tangentU = normalize( tangentU ); 6 | tci.tangentV = normalize( tangentV ); 7 | return( tci ); 8 | } 9 | 10 | -------------------------------------------------------------------------------- /media/dpfx/mdl/sellmeierCoefficientsIOR.glsl: -------------------------------------------------------------------------------- 1 | vec3 sellmeierCoefficientsIOR( in vec3 sellmeierB, in vec3 sellmeierC ) 2 | { 3 | float l2 = 0.5892 * 0.5892; // simplified to fixed wavelength of 589.2 nm 4 | return( vec3( sqrt( 1.0 + sellmeierB.x * l2 / ( l2 - sellmeierC.x ) + sellmeierB.y * l2 / ( l2 - sellmeierC.y ) + sellmeierB.z * l2 / ( l2 - sellmeierC.z ) ) ) ); 5 | } 6 | 7 | -------------------------------------------------------------------------------- /CMake/dp.cmake: -------------------------------------------------------------------------------- 1 | if ( "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "armv7l" OR ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "aarch64")) 2 | set(DP_ARCH "${CMAKE_SYSTEM_PROCESSOR}" CACHE STRING "CPU Architecture" ) 3 | elseif( CMAKE_SIZEOF_VOID_P EQUAL 8 ) 4 | set (DP_ARCH "amd64" CACHE STRING "CPU Architecture") 5 | else () 6 | set (DP_ARCH "x86" CACHE STRING "CPU Architecture") 7 | endif() 8 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_t2_v3f_n3f_tcs.glsl: -------------------------------------------------------------------------------- 1 | 2 | layout( vertices = 3 ) out; 3 | 4 | void main(void) 5 | { 6 | tcPosition[gl_InvocationID] = vPosition[gl_InvocationID]; 7 | tcNormal[gl_InvocationID] = vNormal[gl_InvocationID]; 8 | 9 | if ( gl_InvocationID == 0 ) 10 | { 11 | calculateTessLevels(); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /test/testfw/generator/sgrdr_geosphere/__config.cfg: -------------------------------------------------------------------------------- 1 | [description] 2 | A SgRdr test that draws a generated geosphere 3 | [modules] 4 | ../../sgrdr/modules/sg_benchmarks 5 | [variables] 6 | var test the test name 7 | str description the test description 8 | [filenames] 9 | test.h>##test##.h 10 | test.cpp>##test##.cpp 11 | CMakeLists.txt>CMakeLists.txt 12 | [folder] 13 | ##test## -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_vs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | stateNormal = normalize( attrNormal ); 5 | texCoord0 = attrTexCoord0; 6 | tangent = normalize( attrTangent ); 7 | binormal = normalize( attrBinormal ); 8 | 9 | evalTemporaries(stateNormal); 10 | worldPos = evalWorldPos(); 11 | evalVaryings(); 12 | gl_Position = sys_ViewProjMatrix * worldPos; 13 | } 14 | -------------------------------------------------------------------------------- /test/testfw/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.6) 2 | 3 | project( dpt ) 4 | 5 | set( DPUTIL_INCLUDES 6 | "${DP_HOME}/dp/util" 7 | ) 8 | 9 | ############################################################################### 10 | # set target output directories 11 | 12 | add_subdirectory( core ) 13 | add_subdirectory( manager ) 14 | add_subdirectory( app ) 15 | 16 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_customCurveLayer.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_customCurveLayer( in float normal_reflectivity, in float grazing_reflectivity, in float exponent, float weight, vec4 layer, vec4 base ) 2 | { 3 | vec3 H = normalize( viewDir + lightDir ); 4 | return( vec4( mix( base.rgb, layer.rgb, weight * ( normal_reflectivity + grazing_reflectivity * pow( abs( dot( viewDir, H ) ), exponent ) ) ), base.a ) ); 5 | } 6 | 7 | -------------------------------------------------------------------------------- /test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | SET( DPT_COVER_RIX ON CACHE BOOL "Test framework for RiX is included" ) 3 | SET( DPT_COVER_SGRDR ON CACHE BOOL "Test framework for SgRdr is included" ) 4 | 5 | add_subdirectory( testfw ) 6 | 7 | if ( DPT_COVER_RIX ) 8 | add_subdirectory( rix ) 9 | endif() 10 | 11 | if ( DPT_COVER_SGRDR ) 12 | add_subdirectory( sgrdr ) 13 | endif() 14 | 15 | add_subdirectory( scripts ) -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_v3f_n3f_vs.glsl: -------------------------------------------------------------------------------- 1 | void main(void) 2 | { 3 | vec4 worldPos = sys_WorldMatrix * attrPosition; 4 | varNormal = ( sys_WorldMatrixIT * vec4( attrNormal, 0.0 ) ).xyz; 5 | varWorldPos = worldPos.xyz; 6 | varEyePos = vec3( sys_ViewMatrixI[3][0], sys_ViewMatrixI[3][1], sys_ViewMatrixI[3][2] ); 7 | gl_Position = sys_ViewProjMatrix * worldPos; 8 | } 9 | -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_blank/__config.cfg: -------------------------------------------------------------------------------- 1 | [description] 2 | A RiXGL test that only fills the background 3 | [modules] 4 | ../../rix/gl/modules/gl_feature_tests 5 | ../../rix/gl/modules/rix_tests 6 | [variables] 7 | var test the test name 8 | str description the test description 9 | [filenames] 10 | test.h>##test##.h 11 | test.cpp>##test##.cpp 12 | CMakeLists.txt>CMakeLists.txt 13 | [folder] 14 | ##test## -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_triangle/__config.cfg: -------------------------------------------------------------------------------- 1 | [description] 2 | A RiXGL test that just draws a triangle 3 | [modules] 4 | ../../rix/gl/modules/gl_feature_tests 5 | ../../rix/gl/modules/rix_tests 6 | [variables] 7 | var test the test name 8 | str description the test description 9 | [filenames] 10 | test.h>##test##.h 11 | test.cpp>##test##.cpp 12 | CMakeLists.txt>CMakeLists.txt 13 | [folder] 14 | ##test## -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_spheres/__config.cfg: -------------------------------------------------------------------------------- 1 | [description] 2 | A RiXGL test that draws three shaded spheres 3 | [modules] 4 | ../../rix/gl/modules/gl_feature_tests 5 | ../../rix/gl/modules/rix_tests 6 | [variables] 7 | var test the test name 8 | str description the test description 9 | [filenames] 10 | test.h>##test##.h 11 | test.cpp>##test##.cpp 12 | CMakeLists.txt>CMakeLists.txt 13 | [folder] 14 | ##test## -------------------------------------------------------------------------------- /media/dpfx/mdl/depthPassCutout_fs.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | normal = normalize( varNormal ); 5 | texCoord0 = varTexCoord0; 6 | evalTemporaries( normal ); 7 | float alphaCutout = evalAlphaCutout(); 8 | Color = vec4( texCoord0.xy, 0, 1 ); 9 | //if ( alphaCutout == 0.0f ) 10 | //{ 11 | // //discard; 12 | // Color = vec4(1,0,0,1); 13 | //} 14 | //else 15 | //{ 16 | // Color = vec4(1,1,1,1); 17 | //} 18 | } 19 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_t2_v3f_n3f_tex0_tcs.glsl: -------------------------------------------------------------------------------- 1 | 2 | layout( vertices = 3 ) out; 3 | 4 | void main(void) 5 | { 6 | tcPosition[gl_InvocationID] = vPosition[gl_InvocationID]; 7 | tcNormal[gl_InvocationID] = vNormal[gl_InvocationID]; 8 | tcTexCoord0[gl_InvocationID] = vTexCoord0[gl_InvocationID]; 9 | 10 | if ( gl_InvocationID == 0 ) 11 | { 12 | calculateTessLevels(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_gradient3Texture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_gradient3Texture( in int gradientMode, in float[3] gradientPositions, in vec3[3] gradientColors, in int[3] interpolationModes, in _base_textureCoordinateInfo uvw, in float distortion ) 2 | { 3 | float position = gradientGetPosition( gradientMode, uvw.position.xy ); 4 | return( mdl_base_gradient3Recolor( gradientPositions, gradientColors, interpolationModes, 0, distortion, position ) ); 5 | } 6 | 7 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_measuredCurveLayer.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_measuredCurveLayer( in vec3 curveValues[45], in float weight, in vec4 layer, in vec4 base, in vec3 normal ) 2 | { 3 | float z = acos( clamp( dot( normal, lightDir ), 0.0f, 1.0f ) ) * TWO_OVER_PI * 45.0f; // multiply with the number of curveValues, to get an index 4 | return( vec4( mix( base.rgb, layer.rgb, weight * mix( curveValues[int(floor(z))], curveValues[int(ceil(z))], fract(z) ) ), base.a ) ); 5 | } 6 | 7 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_transformCoordinate.glsl: -------------------------------------------------------------------------------- 1 | _base_textureCoordinateInfo mdl_base_transformCoordinate( in mat4 transform, in _base_textureCoordinateInfo coordinate ) 2 | { 3 | _base_textureCoordinateInfo tci; 4 | tci.position = ( transform * vec4( coordinate.position, 1.0f ) ).xyz; 5 | tci.tangentU = ( transform * vec4( coordinate.tangentU, 0.0f ) ).xyz; 6 | tci.tangentV = ( transform * vec4( coordinate.tangentV, 0.0f ) ).xyz; 7 | return( tci ); 8 | } 9 | 10 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_v3f_n3f_tex0_vs.glsl: -------------------------------------------------------------------------------- 1 | void main(void) 2 | { 3 | vec4 worldPos = sys_WorldMatrix * attrPosition; 4 | varNormal = ( sys_WorldMatrixIT * vec4( attrNormal, 0.0 ) ).xyz; 5 | varWorldPos = worldPos.xyz; 6 | varEyePos = vec3( sys_ViewMatrixI[3][0], sys_ViewMatrixI[3][1], sys_ViewMatrixI[3][2] ); 7 | gl_Position = sys_ViewProjMatrix * worldPos; 8 | varTexCoord0 = attrTexCoord0; 9 | } 10 | -------------------------------------------------------------------------------- /media/dpfx/mdl/monoChannel.glsl: -------------------------------------------------------------------------------- 1 | float monoChannel( in vec4 t, in int monoSource ) 2 | { 3 | switch( monoSource ) 4 | { 5 | case mono_alpha : 6 | return( t.w ); 7 | case mono_average : 8 | return( ( t.x + t.y + t.z ) / 3.0f ); 9 | case mono_luminance : 10 | return( mdl_math_luminance( t.xyz ) ); 11 | case mono_maximum : 12 | return( max( t.x, max( t.y, t.z ) ) ); 13 | default : 14 | return( 1.0f ); 15 | } 16 | } 17 | 18 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_diffuseTransmissionBSDF.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_diffuseTransmissionBSDF( in vec3 materialDiffuse, in vec3 normal ) 2 | { 3 | // use -normal, to get color from lights behind 4 | float cosThetaI = max( 0.0f, dot( -normal, lightDir ) ); 5 | return( vec4( cosThetaI * lightDiffuse * materialDiffuse, 1.0f ) ); 6 | } 7 | 8 | vec4 mdl_df_diffuseTransmissionBSDFEnvironment( in vec3 tint, in vec3 normal ) 9 | { 10 | return( vec4( 0.0f, 0.0f, 0.0f, 1.0f ) ); 11 | } 12 | -------------------------------------------------------------------------------- /dp/sg/io/OBJ/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | cmake_policy(SET CMP0020 OLD) 3 | 4 | FILE (GLOB linkunits ${CMAKE_CURRENT_SOURCE_DIR}/*) 5 | 6 | FOREACH( linkunit ${linkunits} ) 7 | if( IS_DIRECTORY ${linkunit} ) 8 | if( EXISTS ${linkunit}/CMakeLists.txt ) 9 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 10 | add_subdirectory( ${LINK_NAME} ) 11 | endif() 12 | endif() 13 | ENDFOREACH( linkunit ${linkunits} ) 14 | 15 | 16 | -------------------------------------------------------------------------------- /media/effects/xml/terrain/glsl/terrain_ts_vs.glsl: -------------------------------------------------------------------------------- 1 | out ivec2 vs_gridPosition; 2 | 3 | out float tc_tessLevelMax; 4 | 5 | void main(void) 6 | { 7 | tc_tessLevelMax = 4.0f; 8 | 9 | ivec2 heightMapSizeOrig = textureSize( heightMap, 0 ) - ivec2(1); 10 | ivec2 heightMapSize = heightMapSizeOrig / ivec2(tc_tessLevelMax); 11 | 12 | 13 | vs_gridPosition.y = gl_VertexID / (heightMapSize.x); 14 | vs_gridPosition.x = gl_VertexID - (vs_gridPosition.y * (heightMapSize.y)); 15 | } 16 | -------------------------------------------------------------------------------- /test/testfw/manager/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions( 2 | "-D_CRT_SECURE_NO_WARNINGS" 3 | ) 4 | 5 | set( MANAGER_SOURCES 6 | Manager.cpp 7 | Manager.h 8 | ) 9 | 10 | source_group(headers FILES Manager.h) 11 | source_group(sources FILES Manager.cpp) 12 | 13 | add_library( DPTestManager STATIC 14 | ${MANAGER_SOURCES} 15 | ) 16 | 17 | add_dependencies( DPTestManager DPTcore ) 18 | 19 | set_target_properties( DPTestManager PROPERTIES FOLDER "test/testfw" LINK_INTERFACE_LIBRARIES "") -------------------------------------------------------------------------------- /3rdparty/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/jsoncpp) 2 | # configure jsoncpp 3 | option(JSONCPP_WITH_TESTS "" OFF) 4 | option(JSONCPP_WITH_POST_BUILD_UNITTEST "" OFF) 5 | option(JSONCPP_WITH_PKGCONFIG_SUPPORT "" OFF) 6 | add_subdirectory(jsoncpp) 7 | set_target_properties( jsoncpp_lib_static PROPERTIES FOLDER "3rdparty") 8 | 9 | #configure assimp 10 | if (UNIX) 11 | add_compile_options(-fPIC) 12 | endif() 13 | add_subdirectory(assimp) 14 | 15 | endif() 16 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_colorLayer.glsl: -------------------------------------------------------------------------------- 1 | _base_colorLayer mdl_base_colorLayer() 2 | { 3 | _base_colorLayer cl; 4 | cl.layerColor = vec3( 0.0f, 0.0f, 0.0f ); 5 | cl.weight = 1.0f; 6 | cl.mode = color_layer_blend; 7 | return( cl ); 8 | } 9 | 10 | _base_colorLayer mdl_base_colorLayer( in vec3 layerColor, in float weight, in int mode ) 11 | { 12 | _base_colorLayer cl; 13 | cl.layerColor = layerColor; 14 | cl.weight = weight; 15 | cl.mode = mode; 16 | return( cl ); 17 | } 18 | 19 | -------------------------------------------------------------------------------- /media/dpfx/emitColor.glsl: -------------------------------------------------------------------------------- 1 | // emitColor is the function called at the end of the fragment shader to emit the calculated color 2 | // There are a couple of emitColor functions (like in emitColorDepth.glsl, emitColorOITAllCounter.glsl, etc.) which reflect 3 | // the various needs of the various algorithms. 4 | 5 | layout(location = 0, index = 0) out vec4 Color; 6 | 7 | // Simplest version of emitColor(), which just sets the color to the provided color. 8 | void emitColor( in vec4 color ) 9 | { 10 | Color = color; 11 | } -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_normalizedMix.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_normalizedMix( in _df_bsdfComponent components[1] ) 2 | { 3 | return( ( components[0].weight < 1.0f ? components[0].weight : 1.0f ) * components[0].component ); 4 | } 5 | 6 | vec4 mdl_df_normalizedMix( in _df_bsdfComponent components[2] ) 7 | { 8 | float sum = components[0].weight + components[1].weight; 9 | float invSum = ( sum <= 1.0f ) ? 1.0f : 1.0f / sum; 10 | return( invSum * ( components[0].weight * components[0].component + components[1].weight * components[1].component ) ); 11 | } 12 | 13 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_anisotropyConversion.glsl: -------------------------------------------------------------------------------- 1 | _base_anisotropyReturn mdl_base_anisotropyConversion( in float roughness, in float anisotropy, in float anisotropyRotation, in vec3 tangentU, bool miaAnisotropySemantic ) 2 | { 3 | _base_anisotropyReturn aniso; 4 | aniso.roughnessU = roughness; 5 | aniso.roughnessV = roughness * anisotropy; 6 | vec3 tangentV = normalize( cross( stateNormal, tangentU ) ); 7 | float angle = 2.0f * PI * anisotropyRotation; 8 | aniso.tangentU = cos( angle ) * tangentU + sin( angle ) * tangentV; 9 | return( aniso ); 10 | } 11 | 12 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_clampedMix.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_clampedMix( in _df_bsdfComponent components[2] ) 2 | { 3 | vec4 result = vec4( 0.0f, 0.0f, 0.0f, 0.0f ); 4 | float sum = 0.0f; 5 | for ( int i=0 ; i<2 && sum < 1.0f ; i++ ) 6 | { 7 | if ( sum + components[i].weight < 1.0f ) 8 | { 9 | result += components[i].weight * components[i].component; 10 | } 11 | else if ( sum < 1.0f ) 12 | { 13 | result += ( 1.0f - sum ) * components[i].component; 14 | } 15 | sum += components[i].weight; 16 | } 17 | return( result ); 18 | } 19 | 20 | -------------------------------------------------------------------------------- /media/dpfx/emitColorDepth.glsl: -------------------------------------------------------------------------------- 1 | // emitColor is the function called at the end of the fragment shader to emit the calculated color 2 | // There are a couple of emitColor functions (like in emitColorDepth.glsl, emitColorOITAllCounter.glsl, etc.) which reflect 3 | // the various needs of the various algorithms. 4 | 5 | layout(location = 0, index = 0) out vec4 Color; 6 | 7 | // Version of emitColor() used for depth pass shaders, where the color just have to be set to something, but the actual 8 | // value doesn't matter 9 | void emitColor( in vec4 color ) 10 | { 11 | Color = vec4( 0 ); 12 | } -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/standard_material_v3f_n3f_tex0_ta3f_bi3f_vs.glsl: -------------------------------------------------------------------------------- 1 | void main(void) 2 | { 3 | vec4 worldPos = sys_WorldMatrix * attrPosition; 4 | varNormal = ( sys_WorldMatrixIT * vec4( attrNormal, 0.0 ) ).xyz; 5 | varWorldPos = worldPos.xyz; 6 | varEyePos = vec3( sys_ViewMatrixI[3][0], sys_ViewMatrixI[3][1], sys_ViewMatrixI[3][2] ); 7 | gl_Position = sys_ViewProjMatrix * worldPos; 8 | varTexCoord0 = attrTexCoord0; 9 | varTangent = (sys_WorldMatrix * vec4(attrTangent,0)).xyz; 10 | varBinormal = (sys_WorldMatrix * vec4(attrBinormal,0)).xyz; 11 | } 12 | -------------------------------------------------------------------------------- /apps/Viewer/res/tonemapFragment.glsl: -------------------------------------------------------------------------------- 1 | void main() 2 | { 3 | vec3 ldrColor = invWhitePoint * texture(tonemapHDR, varTexCoord0).rgb; 4 | ldrColor *= (ldrColor * burnHighlights + 1.0f) / (ldrColor + 1.0f); 5 | float greyscale = dot(ldrColor, vec3(0.176204f, 0.812985f, 0.0108109f)); 6 | ldrColor = mix(vec3(greyscale), ldrColor, saturation); 7 | float intens = dot(ldrColor, vec3(0.176204f, 0.812985f, 0.0108109f)); 8 | if (intens < 1.0f) 9 | { 10 | ldrColor = mix(pow(ldrColor, vec3(crushBlacks)), ldrColor, sqrt(intens)); 11 | } 12 | Color = vec4(pow(ldrColor, vec3(invGamma)), 1.0f); 13 | } 14 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_normal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /apps/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | cmake_policy(SET CMP0020 OLD) 3 | 4 | SET( BUILD_OPENGL_APPS ON CACHE BOOL "Build the RiXGL based apps" ) 5 | 6 | if( BUILD_OPENGL_APPS ) 7 | FILE (GLOB linkunits ${CMAKE_CURRENT_SOURCE_DIR}/*) 8 | 9 | FOREACH( linkunit ${linkunits} ) 10 | if( IS_DIRECTORY ${linkunit} ) 11 | if( EXISTS ${linkunit}/CMakeLists.txt ) 12 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 13 | add_subdirectory( ${LINK_NAME} ) 14 | endif() 15 | endif() 16 | ENDFOREACH( linkunit ${linkunits} ) 17 | endif() 18 | 19 | 20 | -------------------------------------------------------------------------------- /media/effects/xml/collada/glsl/colladaDepthPass_fs.glsl: -------------------------------------------------------------------------------- 1 | float luminance( in vec3 v ) 2 | { 3 | // Luma coefficients according to ITU-R Recommendation BT.709 (http://en.wikipedia.org/wiki/Rec._709) 4 | return( 0.2126f * v.r + 0.7152f * v.g + 0.0722f * v.b ); 5 | } 6 | 7 | void main(void) 8 | { 9 | vec4 materialTransparent = evaluateColor( transparentColor, transparentSampler, transparentTC ); 10 | float a = ( rgbTransparency ? 1.0f - luminance( materialTransparent.rgb ) : materialTransparent.a ) * transparency; 11 | 12 | if ( a < 1.0f ) 13 | { 14 | discard; 15 | } 16 | 17 | emitColor( vec4( 1 )); 18 | } 19 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_tangent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /dp/sg/animation/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | 4 | #definitions 5 | add_definitions( 6 | -DDP_SG_ANIMATION_EXPORTS 7 | ) 8 | 9 | #sources 10 | set(SOURCES 11 | src/LinkManager.cpp 12 | ) 13 | 14 | set(PRIVATE_HEADERS 15 | ) 16 | 17 | set(PUBLIC_HEADERS 18 | Config.h 19 | LinkManager.h 20 | ) 21 | 22 | source_group(source FILES ${SOURCES}) 23 | source_group(header FILES ${PRIVATE_HEADERS}) 24 | source_group("" FILES ${PUBLIC_HEADERS}) 25 | 26 | #target 27 | add_library( DPSgAnimation OBJECT 28 | ${SOURCES} 29 | ${HEADERS} 30 | ${PUBLIC_HEADERS} 31 | ) 32 | 33 | set_target_properties( DPSgAnimation PROPERTIES FOLDER "DP/SG" ) 34 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_flowNoiseTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_flowNoiseTexture( in _base_textureCoordinateInfo uvw, in vec3 color1, in vec3 color2, in float size, in float phase, in int levels, in bool absoluteNoise 2 | , in float levelGain, in float levelScale, in float levelProgressiveUScale, in float levelProgressiveVMotion ) 3 | { 4 | _base_textureReturn tr; 5 | tr.tint = mix( color1, color2, flowNoise( uvw.position.xy / size, phase, levels, absoluteNoise, levelGain, levelScale, levelProgressiveUScale, levelProgressiveVMotion ) ); 6 | tr.mono = 0.0f; 7 | return( tr ); 8 | } 9 | 10 | -------------------------------------------------------------------------------- /media/effects/xml/visualize_binormal.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /test/rix/gl/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( framework ) 2 | 3 | set( TEST_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/modules" ) 4 | 5 | FILE (GLOB linkunits ${TEST_DIRECTORY}/*) 6 | 7 | 8 | FOREACH( linkunit ${linkunits} ) 9 | 10 | 11 | if( IS_DIRECTORY ${linkunit} ) 12 | if( EXISTS ${linkunit}/CMakeLists.txt ) 13 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 14 | add_subdirectory( modules/${LINK_NAME} ) 15 | set_target_properties( ${LINK_NAME} PROPERTIES SUFFIX ".dptest" FOLDER "test/rix/gl") 16 | add_dependencies( ${LINK_NAME} DPTRiXGL DPTestManager DPTapp ) 17 | endif() 18 | endif() 19 | ENDFOREACH( linkunit ${linkunits} ) 20 | -------------------------------------------------------------------------------- /test/rix/core/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( framework ) 2 | add_subdirectory( helpers ) 3 | 4 | set( TEST_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/modules" ) 5 | 6 | FILE (GLOB linkunits ${TEST_DIRECTORY}/*) 7 | 8 | 9 | FOREACH( linkunit ${linkunits} ) 10 | 11 | 12 | if( IS_DIRECTORY ${linkunit} ) 13 | if( EXISTS ${linkunit}/CMakeLists.txt ) 14 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 15 | add_subdirectory( modules/${LINK_NAME} ) 16 | set_target_properties( ${LINK_NAME} PROPERTIES SUFFIX ".dptest" FOLDER "DPT/RiX/Core/tests") 17 | add_dependencies( ${LINK_NAME} DPTRiX DPTestManager DPTapp ) 18 | endif() 19 | endif() 20 | ENDFOREACH( linkunit ${linkunits} ) 21 | -------------------------------------------------------------------------------- /test/sgrdr/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory( framework ) 2 | 3 | set( TEST_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/modules" ) 4 | 5 | FILE (GLOB linkunits ${TEST_DIRECTORY}/*) 6 | 7 | 8 | FOREACH( linkunit ${linkunits} ) 9 | 10 | 11 | if (TARGET DPTSgRdr) 12 | if( IS_DIRECTORY ${linkunit} ) 13 | if( EXISTS ${linkunit}/CMakeLists.txt ) 14 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 15 | add_subdirectory( modules/${LINK_NAME} ) 16 | set_target_properties( ${LINK_NAME} PROPERTIES SUFFIX ".dptest" FOLDER "test/sgrdr") 17 | add_dependencies( ${LINK_NAME} DPTSgRdr DPTestManager DPTapp ) 18 | endif() 19 | endif() 20 | endif() 21 | ENDFOREACH( linkunit ${linkunits} ) 22 | -------------------------------------------------------------------------------- /CMake/FindNVHOOPS3D.cmake: -------------------------------------------------------------------------------- 1 | set( HOOPS_VERSION "5.0" ) 2 | file( TO_CMAKE_PATH "${DP_3RDPARTY_PATH}/HOOPS/${HOOPS_VERSION}/" HOOPS3DROOT) 3 | 4 | if ( EXISTS "${HOOPS3DROOT}" ) 5 | set( HOOPS_FOUND "true" ) 6 | if ( "${DP_ARCH}" STREQUAL "x86" ) 7 | set( HOOPS_ARCH "win32" ) 8 | elseif ( "${DP_ARCH}" STREQUAL "amd64" ) 9 | set( HOOPS_ARCH "win64" ) 10 | endif() 11 | 12 | # we only have windows version at the moment 13 | if (WIN32) 14 | elseif ( UNIX ) 15 | endif() 16 | 17 | file ( TO_NATIVE_PATH "${HOOPS3DROOT}" HOOPS3DROOT ) 18 | set( ENV{HOOPS3DROOT} "${HOOPS3DROOT}" ) 19 | set( HOOPS3D_BINDIR "$ENV{HOOPS3DROOT}/bin/${HOOPS_ARCH}" ) 20 | set( HOOPS3D_INCLUDES "$ENV{HOOPS3DROOT}/include" ) 21 | 22 | endif() 23 | 24 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_df_measuredCurveFactor.glsl: -------------------------------------------------------------------------------- 1 | vec4 mdl_df_measuredCurveFactor( in vec3 curveValues[5], in vec4 base ) 2 | { 3 | float z = acos( clamp( dot( stateNormal, lightDir ), 0.0f, 1.0f ) ) * TWO_OVER_PI * 5.0f; // multiply with the number of curveValues, to get an index 4 | return( vec4( base.rgb * mix( curveValues[int(floor(z))], curveValues[int(ceil(z))], fract(z) ), base.a ) ); 5 | } 6 | 7 | vec4 mdl_df_measuredCurveFactor( in vec3 curveValues[45], in vec4 base ) 8 | { 9 | float z = acos( clamp( dot( stateNormal, lightDir ), 0.0f, 1.0f ) ) * TWO_OVER_PI * 45.0f; // multiply with the number of curveValues, to get an index 10 | return( vec4( base.rgb * mix( curveValues[int(floor(z))], curveValues[int(ceil(z))], fract(z) ), base.a ) ); 11 | } 12 | 13 | -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_blank/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.cpp # Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.h # Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/testfw/generator/sgrdr_geosphere/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.cpp # Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.h # Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_spheres/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/testfw/generator/rixgl_triangle/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/##test##.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /media/dpfx/oitAllClear_fs.glsl: -------------------------------------------------------------------------------- 1 | // main() of the clear pass of OITAll (right before the transparent pass) 2 | 3 | #version 420 4 | 5 | layout(size1x32) uniform restrict writeonly uimage1D counterAccu; // 1-element image to count all the samples 6 | layout(size1x32) uniform restrict writeonly uimage2D perFragmentCount; // 2D image sized as the view to count the samples per fragment 7 | 8 | layout(location = 0, index = 0) out vec4 Color; 9 | 10 | void main() 11 | { 12 | ivec2 screenPos = ivec2( gl_FragCoord.xy ); 13 | 14 | // clear the counterAccu just once 15 | if ( screenPos == ivec2( 0 ) ) 16 | { 17 | imageStore( counterAccu, 0, uvec4( 0 ) ); 18 | } 19 | 20 | imageStore( perFragmentCount, screenPos, uvec4( 0 ) ); 21 | 22 | Color = vec4( 0 ); // color doesn't matter 23 | } 24 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_texture_cube_maps/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_cube_maps.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_cube_maps.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME} FILES ${TEST_HEADERS} ${TEST_SOURCES}) 20 | 21 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 22 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 23 | 24 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 25 | -------------------------------------------------------------------------------- /dp/sg/io/DPBF/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | "-DDPBFLOADER_EXPORTS" 9 | ) 10 | 11 | #sources 12 | set(DPBFLOADER_SOURCES 13 | DPBFLoader.cpp 14 | ) 15 | 16 | set(DPBFLOADER_HEADERS 17 | inc/DPBFLoader.h 18 | ../DPBF.h 19 | ) 20 | 21 | source_group(source FILES ${DPBFLOADER_SOURCES}) 22 | source_group(header FILES ${DPBFLOADER_HEADERS}) 23 | 24 | #target 25 | add_library( DPBFLoader SHARED 26 | ${DPBFLOADER_SOURCES} 27 | ${DPBFLOADER_HEADERS} 28 | ) 29 | 30 | target_link_libraries( DPBFLoader 31 | DP 32 | DPSgCore 33 | DPMath 34 | DPUtil 35 | DPFx 36 | DPSgIO 37 | ) 38 | 39 | set_target_properties( DPBFLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 40 | -------------------------------------------------------------------------------- /dp/sg/io/IL/Saver/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}" 4 | ${IL_INCLUDE_DIR} 5 | ) 6 | 7 | #definitions 8 | add_definitions( 9 | -DILTEXSAVER_EXPORTS 10 | ${DEVIL_DEFINITIONS} 11 | ) 12 | 13 | #sources 14 | set(ILTEXSAVER_SOURCES 15 | ILTexSaver.cpp 16 | ) 17 | set(ILTEXSAVER_HEADERS 18 | ILTexSaver.h 19 | ) 20 | 21 | source_group(source FILES ${ILTEXSAVER_SOURCES}) 22 | source_group(header FILES ${ILTEXSAVER_HEADERS}) 23 | 24 | #target 25 | add_library( ILTexSaver SHARED 26 | ${ILTEXSAVER_SOURCES} 27 | ${ILTEXSAVER_HEADERS} 28 | ) 29 | 30 | target_link_libraries( ILTexSaver 31 | DPSgCore 32 | DPUtil 33 | DPSgIO 34 | ${IL_LIBRARIES} 35 | ) 36 | 37 | set_target_properties( ILTexSaver PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO") 38 | -------------------------------------------------------------------------------- /dp/ui/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package( OpenGL REQUIRED ) 2 | 3 | #includes 4 | include_directories( 5 | ${GLEW_INCLUDE_DIRS} 6 | ) 7 | #definitions 8 | add_definitions( 9 | -DDP_UI_EXPORTS 10 | ${GLEW_DEFINITIONS} 11 | ) 12 | 13 | #sources 14 | set(SOURCES 15 | src/RenderTarget.cpp 16 | ) 17 | 18 | set(PUBLIC_HEADERS 19 | Config.h 20 | RenderTarget.h 21 | ) 22 | 23 | set(PRIVATE_HEADERS 24 | ) 25 | 26 | source_group(sources FILES ${SOURCES}) 27 | source_group(headers FILES ${PRIVATE_HEADERS}) 28 | source_group("" FILES ${PUBLIC_HEADERS}) 29 | 30 | #target 31 | add_library( DPUI SHARED 32 | ${SOURCES} 33 | ${PUBLIC_HEADERS} 34 | ${PRIVATE_HEADERS} 35 | ) 36 | 37 | target_link_libraries( DPUI 38 | DPUtil 39 | ) 40 | 41 | set_target_properties( DPUI PROPERTIES FOLDER "DP" ) 42 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_FBO/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_math_blackbody.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_math_blackbody( in float temperature ) 2 | { 3 | vec3 color; 4 | temperature /= 100.0f; 5 | 6 | if ( temperature <= 66.0f ) 7 | { 8 | color.r = 1.0f; 9 | color.g = clamp( ( 99.4708025861f * log(temperature) - 161.1195681661f ) / 255.0f, 0.0f, 1.0f ); 10 | if ( temperature <= 19.0f ) 11 | { 12 | color.b = 0.0f; 13 | } 14 | else 15 | { 16 | color.b = clamp( ( 138.5177312231f * log(temperature) - 305.0447927307f ) / 255.0f, 0.0f, 1.0f ); 17 | } 18 | } 19 | else 20 | { 21 | color.r = clamp( 329.698727446f * pow(temperature - 60.0f, -0.1332047592f) / 255.0f, 0.0f, 1.0f ); 22 | color.g = clamp( 288.1221695283f * pow(temperature, -0.0755148492f) / 255.0f, 0.0f, 1.0f ); 23 | color.b = 1.0f; 24 | } 25 | return( color ); 26 | } 27 | -------------------------------------------------------------------------------- /test/sgrdr/modules/sg_benchmarks/benchmark_model/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_model.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_model.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_FBO_MRT/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO_MRT.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO_MRT.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_rix_api/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_rix_api.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_rix_api.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_textures/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_textures.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_textures.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_FBO_native/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO_native.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_FBO_native.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/feature_tangent_space/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_tangent_space.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_tangent_space.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /apps/Viewer/res/highlightFragment.glsl: -------------------------------------------------------------------------------- 1 | 2 | void main(void) 3 | { 4 | // Laplace filter kernel 5 | // 0 1 0 6 | // 1 -4 1 7 | // 0 1 0 8 | 9 | vec2 invSize = 1.0f / vec2( textureSize( selection, 0 ) ); 10 | float sampleValue = -4.0f * texture( selection, varTexCoord0, 0 ).x; // center 11 | sampleValue += texture( selection, vec2(varTexCoord0.x, varTexCoord0.y - invSize.y), 0 ).x; // bottom 12 | sampleValue += texture( selection, vec2(varTexCoord0.x - invSize.x, varTexCoord0.y), 0 ).x; // left 13 | sampleValue += texture( selection, vec2(varTexCoord0.x + invSize.x, varTexCoord0.y), 0 ).x; // right 14 | sampleValue += texture( selection, vec2(varTexCoord0.x, varTexCoord0.y + invSize.y), 0 ).x; // top 15 | 16 | if ( sampleValue <= 0.5f ) discard; 17 | Color = vec4( 1.0f, 1.0f, 0.0f, 1.0f ); // yellow 18 | } 19 | -------------------------------------------------------------------------------- /media/dpfx/oitClosestListClear_fs.glsl: -------------------------------------------------------------------------------- 1 | // main() of the clear pass of OITClosestList (right before the transparent pass) 2 | 3 | #version 420 4 | 5 | layout(size1x32) uniform restrict writeonly uimage1D counterAccu; // 1-element image to count all the samples 6 | layout(size1x32) uniform restrict writeonly uimage2D perFragmentOffset; // 2D image sized as the view holding the base offset per fragment 7 | 8 | layout(location = 0, index = 0) out vec4 Color; 9 | 10 | void main() 11 | { 12 | ivec2 screenPos = ivec2( gl_FragCoord.xy ); 13 | 14 | // clear the counterAccu just once 15 | if ( screenPos == ivec2( 0, 0 ) ) 16 | { 17 | imageStore( counterAccu, 0, uvec4( 0 ) ); 18 | } 19 | 20 | imageStore( perFragmentOffset, screenPos, uvec4( 0xFFFFFFFF ) ); 21 | 22 | Color = vec4( 0 ); // color doesn't matter 23 | } 24 | -------------------------------------------------------------------------------- /test/scripts/scene_benchmark/calc_FPS.py: -------------------------------------------------------------------------------- 1 | 2 | import sys; 3 | import re; 4 | 5 | 6 | fin = open(sys.argv[1]) 7 | lines = fin.readlines() 8 | fin.close() 9 | 10 | framesPassed = 0 11 | totalT = 0.0 12 | 13 | for iline in range(len(lines)): 14 | cfgline = lines[iline] 15 | 16 | important_part = re.sub( '^([^#]*).*$', "\\1", cfgline ) 17 | important_part = re.sub('\s*$', "", important_part) 18 | 19 | if re.match('[^\s]', important_part): 20 | if re.match('^[0-9]*,[\-]?[0-9\.]*e?[\-]?[0-9]*', important_part): 21 | frameT = re.sub( '^[^,]*,([\-]?[0-9\.]*e?[\-]?[0-9]*)', "\\1", important_part ) 22 | if framesPassed: 23 | totalT = totalT + float(frameT) 24 | framesPassed = framesPassed + 1 25 | 26 | valFPS = framesPassed / totalT 27 | valFPSint = int(valFPS) 28 | 29 | sys.exit( valFPSint ) -------------------------------------------------------------------------------- /media/effects/xml/collada/glsl/colladaCommonTexture.glsl: -------------------------------------------------------------------------------- 1 | 2 | vec2 evaluateTexCoord( in int tc ) 3 | { 4 | switch( tc ) 5 | { 6 | case 0 : 7 | return( varTexCoord0 ); 8 | case 1 : 9 | return( varTexCoord1 ); 10 | case 2 : 11 | return( varTexCoord2 ); 12 | case 3 : 13 | return( varTexCoord3 ); 14 | case 4 : 15 | return( varTexCoord4 ); 16 | case 5 : 17 | return( varTexCoord5 ); 18 | case 6 : 19 | return( varTexCoord6 ); 20 | case 7 : 21 | return( varTexCoord7 ); 22 | default : 23 | return( vec2( 0.0f, 0.0f ) ); 24 | } 25 | } 26 | 27 | vec4 evaluateColor( in vec4 color, in sampler2D sampler, in int tc ) 28 | { 29 | if ( 0 <= tc ) 30 | { 31 | return( texture2D( sampler, evaluateTexCoord( tc ) ) ); 32 | } 33 | return( color ); 34 | } 35 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_texture_buffer/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_buffer.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_buffer.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_texture_native/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_native.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_native.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/feature_cubemap_from_file/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_cubemap_from_file.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_cubemap_from_file.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /dp/sg/io/PLY/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DPLYLOADER_EXPORTS 9 | ) 10 | 11 | if(WIN32) 12 | add_definitions("/wd4996") 13 | endif() 14 | 15 | 16 | #sources 17 | set(PLYLOADER_SOURCES 18 | PLYLoader.cpp 19 | ) 20 | 21 | set(PLYLOADER_HEADERS 22 | PLYLoader.h 23 | ) 24 | 25 | source_group(source FILES ${PLYLOADER_SOURCES}) 26 | source_group(header FILES ${PLYLOADER_HEADERS}) 27 | 28 | #target 29 | add_library( PLYLoader SHARED 30 | ${PLYLOADER_SOURCES} 31 | ${PLYLOADER_HEADERS} 32 | ) 33 | 34 | target_link_libraries( PLYLoader 35 | DP 36 | DPSgCore 37 | DPMath 38 | DPUtil 39 | DPFx 40 | DPSgIO 41 | ) 42 | 43 | set_target_properties( PLYLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 44 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/feature_texture_sampler/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_sampler.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_texture_sampler.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/benchmarks/benchmark_vertexThroughput/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_vertexThroughput.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_vertexThroughput.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/feature_cylinder_derivatives/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_cylinder_derivatives.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_cylinder_derivatives.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/source FILES ${TEST_SOURCES}) 20 | source_group(${TEST_NAME}/header FILES ${TEST_HEADERS}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/feature_transformAttribute/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #Extract test name from directory 3 | #string(REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${CMAKE_CURRENT_SOURCE_DIR}) 4 | 5 | 6 | #definitions 7 | add_definitions("-DDPT_QUOTEDTESTNAME=${TEST_NAME}") 8 | 9 | set (TEST_SOURCES 10 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_transform_attribute.cpp #### Add additional files here 11 | ) 12 | 13 | set (TEST_HEADERS 14 | ${CMAKE_CURRENT_SOURCE_DIR}/feature_transform_attribute.h #### Add additional files here 15 | ) 16 | 17 | 18 | #source 19 | source_group(${TEST_NAME}/headers FILES ${TEST_HEADERS}) 20 | source_group(${TEST_NAME}/sources FILES ${TEST_SOURCES}) 21 | 22 | LIST(APPEND LINK_SOURCES ${TEST_HEADERS} ) 23 | LIST(APPEND LINK_SOURCES ${TEST_SOURCES} ) 24 | 25 | set (LINK_SOURCES ${LINK_SOURCES} PARENT_SCOPE) 26 | -------------------------------------------------------------------------------- /dp/sg/io/IL/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}" 4 | ${IL_INCLUDE_DIR} 5 | ) 6 | 7 | #definitions 8 | add_definitions( 9 | -DILTEXLOADER_EXPORTS 10 | ${DEVIL_DEFINITIONS} 11 | ) 12 | 13 | #sources 14 | set(ILTEXLOADER_SOURCES 15 | ILTexLoader.cpp 16 | ) 17 | 18 | set(ILTEXLOADER_HEADERS 19 | ILTexLoader.h 20 | ) 21 | 22 | source_group(source FILES ${ILTEXLOADER_SOURCES}) 23 | source_group(header FILES ${ILTEXLOADER_HEADERS}) 24 | 25 | #target 26 | add_library( ILTexLoader SHARED 27 | ${ILTEXLOADER_SOURCES} 28 | ${ILTEXLOADER_HEADERS} 29 | ) 30 | 31 | target_link_libraries( ILTexLoader 32 | DPSgCore 33 | DPMath 34 | DPUtil 35 | DPFx 36 | DPSgIO 37 | ${IL_LIBRARIES} 38 | ) 39 | 40 | set_target_properties( ILTexLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 41 | -------------------------------------------------------------------------------- /dp/sg/io/OBJ/Saver/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DOBJSAVER_EXPORTS 9 | -D_CRT_SECURE_NO_WARNINGS 10 | ) 11 | 12 | #sources 13 | set(OBJSAVER_SOURCES 14 | ExtractGeometryTraverser.cpp 15 | OBJSaver.cpp 16 | ) 17 | 18 | set(OBJSAVER_HEADERS 19 | inc/OBJSaver.h 20 | ExtractGeometryTraverser.h 21 | ) 22 | 23 | source_group(source FILES ${OBJSAVER_SOURCES}) 24 | source_group(header FILES ${OBJSAVER_HEADERS}) 25 | 26 | #target 27 | add_library( OBJSaver SHARED 28 | ${OBJSAVER_SOURCES} 29 | ${OBJSAVER_HEADERS} 30 | ) 31 | 32 | target_link_libraries( OBJSaver 33 | DPSgCore 34 | DPMath 35 | DPUtil 36 | DPFx 37 | DPSgIO 38 | ) 39 | 40 | set_target_properties( OBJSaver PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 41 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_coordinateSource.glsl: -------------------------------------------------------------------------------- 1 | _base_textureCoordinateInfo mdl_base_coordinateSource( in int coordinateSystem, in int textureSpace ) 2 | { 3 | _base_textureCoordinateInfo tci; 4 | switch( coordinateSystem ) 5 | { 6 | case texture_coordinate_object : 7 | tci.position = varObjPos; 8 | tci.tangentU = normalize( varObjTangent ); 9 | tci.tangentV = normalize( varObjBinormal ); 10 | break; 11 | case texture_coordinate_world : 12 | tci.position = varWorldPos; 13 | tci.tangentU = normalize( varTangent ); 14 | tci.tangentV = normalize( varBinormal ); 15 | break; 16 | case texture_coordinate_uvw : 17 | default : 18 | tci.position = varTexCoord0; 19 | tci.tangentU = normalize( varTangent ); 20 | tci.tangentV = normalize( varBinormal ); 21 | break; 22 | } 23 | return( tci ); 24 | } 25 | 26 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_rotationTranslationScale.glsl: -------------------------------------------------------------------------------- 1 | mat4 mdl_base_rotationTranslationScale( in vec3 rotation, in vec3 translation, in vec3 scaling ) 2 | { 3 | mat4 st = mat4( scaling.x, 0.0f, 0.0f, 0.0f 4 | , 0.0f, scaling.y, 0.0f, 0.0f 5 | , 0.0f, 0.0f, scaling.z, 0.0f 6 | , translation.x - 0.5f, translation.y - 0.5f, translation.z - 0.5f, 1.0f ); 7 | vec3 s = sin( rotation ); 8 | vec3 c = cos( rotation ); 9 | mat4 r = mat4( c.y * c.z, -c.x * s.z + s.x * s.y * c.z, s.x * s.z + c.x * s.y * c.z, 0.0f 10 | , c.y * s.z, c.x * c.z + s.x * s.y * s.z, -s.x * c.z + c.x * s.y * s.z, 0.0f 11 | , -s.y , s.x * c.y , c.x * c.y , 0.0f 12 | , 0.5f , 0.5f , 0.5f , 1.0f ); 13 | return( st * r ); 14 | } 15 | 16 | -------------------------------------------------------------------------------- /media/effects/xml/carpaint/glsl/eval_glossy.glsl: -------------------------------------------------------------------------------- 1 | vec3 glossy_eval(vec3 albedo, vec3 wo, vec3 ns, vec3 wi) 2 | { 3 | vec3 wh = normalize(wo + wi); 4 | 5 | float D = shininess * 2.0f * pow(abs(dot(ns, wh)), shininess); 6 | 7 | // compute some dot products 8 | float n_dot_wo = abs(dot(ns, wo)); 9 | float n_dot_wi = abs(dot(ns, wi)); 10 | float wo_dot_wh = abs(dot(wo, wh)); 11 | float one_over_wo_dot_wh = 1.0f / wo_dot_wh; 12 | 13 | // evaluate shadow masking term 14 | float two_times_n_dot_wh_over_wo_dot_wh = 2.0f * abs(dot(ns, wh)) * one_over_wo_dot_wh; 15 | float G = min(1.0f, min(n_dot_wo * two_times_n_dot_wh_over_wo_dot_wh, 16 | n_dot_wi * two_times_n_dot_wh_over_wo_dot_wh)); 17 | 18 | // Fresnel is fresnel_no_op here, F == 1.0f factor removed. 19 | return (albedo * G * D) / (4.0f * n_dot_wo * n_dot_wi); 20 | } -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_worleyNoiseTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_worleyNoiseTexture( in _base_textureCoordinateInfo uvw, in vec3 color1, in vec3 color2, in float size, in int mode, in int metric, in bool applyMarble, in bool applyDent 2 | , in vec3 noiseDistortion, in float noiseThresholdHigh, in float noiseThresholdLow, in float noiseBands, in float stepThreshold, in float edge ) 3 | { 4 | vec3 scaledPos = uvw.position / size; 5 | float noise = applyNoiseModifications( worleyNoise( scaledPos, noiseDistortion, stepThreshold, mode, metric, 1.0f ) 6 | , scaledPos.x, applyMarble, applyDent, noiseThresholdHigh, noiseThresholdLow, noiseBands ); 7 | 8 | _base_textureReturn tr; 9 | tr.tint = mix( color1, color2, noise ); 10 | tr.mono = average( tr.tint ); 11 | return( tr ); 12 | } 13 | 14 | -------------------------------------------------------------------------------- /dp/culling/cpu/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPCullingCPU) 2 | 3 | add_definitions( 4 | "-DDP_CULLING_EXPORTS" 5 | "-D_CRT_SECURE_NO_WARNINGS" 6 | ) 7 | 8 | set(PUBLIC_HEADERS 9 | Config.h 10 | Manager.h 11 | ) 12 | 13 | set(HEADERS 14 | inc/ManagerImpl.h 15 | ) 16 | 17 | #let cmake determine linker language 18 | set(SOURCES 19 | src/ManagerImpl.cpp 20 | ) 21 | 22 | source_group(sources FILES ${SOURCES}) 23 | source_group(headers FILES ${HEADERS}) 24 | source_group("" FILES ${PUBLIC_HEADERS}) 25 | 26 | add_library(DPCullingCPU STATIC 27 | ${PUBLIC_HEADERS} 28 | ${HEADERS} 29 | ${SOURCES} 30 | ) 31 | 32 | target_link_libraries( DPCullingCPU DPUtil DPMath ) 33 | 34 | set_target_properties( DPCullingCPU PROPERTIES FOLDER "DP/Culling" ) 35 | 36 | if(UNIX) 37 | set_target_properties( DPCullingCPU PROPERTIES COMPILE_FLAGS -fPIC ) 38 | endif() 39 | -------------------------------------------------------------------------------- /dp/sg/io/DPBF/Saver/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DDPBFSAVER_EXPORTS 9 | ) 10 | 11 | if(WIN32) 12 | add_definitions("/wd4996") 13 | endif() 14 | 15 | #sources 16 | set(DPBFSAVER_SOURCES 17 | DPBFSaver.cpp 18 | ) 19 | 20 | set(DPBFSAVER_HEADERS 21 | inc/DPBFSaver.h 22 | ../DPBF.h 23 | ) 24 | 25 | source_group(source FILES ${DPBFSAVER_SOURCES}) 26 | source_group(header FILES ${DPBFSAVER_HEADERS}) 27 | 28 | #target 29 | add_library( DPBFSaver SHARED 30 | ${DPBFSAVER_SOURCES} 31 | ${DPBFSAVER_HEADERS} 32 | ) 33 | 34 | target_link_libraries( DPBFSaver 35 | DP 36 | DPSgCore 37 | DPMath 38 | DPUtil 39 | DPFx 40 | DPSgIO 41 | ) 42 | 43 | set_target_properties( DPBFSaver PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 44 | -------------------------------------------------------------------------------- /media/dpfx/mdl/evalCubeMap.glsl: -------------------------------------------------------------------------------- 1 | vec3 evalCubeMap( in vec3 R, in float roughness ) 2 | { 3 | #if 0 4 | 5 | // simply return the cube map value 6 | return( texture( sys_EnvironmentSampler, R ).rgb ); 7 | 8 | #else 9 | 10 | // explicitly determine the lod level into the cube map, using 11 | // roughness as the weight on the level 12 | ivec2 cubeMapSize = textureSize( sys_EnvironmentSampler, 0 ); 13 | float cubeMapLevels = log2( max( cubeMapSize.x, cubeMapSize.y ) ) + 1; 14 | float clearLevel = textureQueryLod( sys_EnvironmentSampler, R ).x; 15 | float roughLevel = mix( clearLevel, cubeMapLevels, roughness ); 16 | 17 | // then return the cube map on the determined LOD 18 | // -> image is nicely blurred, but with high roughness, the 19 | // cube map edges are clearly visible 20 | return( textureLod( sys_EnvironmentSampler, R, roughLevel ).rgb ); 21 | 22 | #endif 23 | } 24 | 25 | -------------------------------------------------------------------------------- /CMake/FindNVTinyXML.cmake: -------------------------------------------------------------------------------- 1 | # - Try to find TinyXML 2 | # Once done this will define 3 | # TINYXML_FOUND - System has TinyXML 4 | # TINYXML_INCLUDE_DIRS - The TinyXML include directories 5 | # TINYXML_LIBRARIES - The libraries needed to use TinyXML 6 | # TINYXML_DEFINITIONS - Compiler switches required for using TinyXML 7 | 8 | find_path(TINYXML_INCLUDE_DIR "tinyxml.h") 9 | find_library(TINYXML_LIBRARY NAMES tinyxml) 10 | 11 | set(TINYXML_LIBRARIES ${TINYXML_LIBRARY} ) 12 | set(TINYXML_INCLUDE_DIRS ${TINYXML_INCLUDE_DIR} ) 13 | 14 | include(FindPackageHandleStandardArgs) 15 | # handle the QUIETLY and REQUIRED arguments and set TINYXML_FOUND to TRUE 16 | # if all listed variables are TRUE 17 | find_package_handle_standard_args(TinyXML DEFAULT_MSG 18 | TINYXML_LIBRARY TINYXML_INCLUDE_DIR) 19 | 20 | mark_as_advanced(TINYXML_INCLUDE_DIR TINYXML_LIBRARY ) -------------------------------------------------------------------------------- /CMake/FindNVlib3ds.cmake: -------------------------------------------------------------------------------- 1 | # - Try to find lib3ds 2 | # Once done this will define 3 | # LIB3DS_FOUND - System has lib3ds 4 | # LIB3DS_INCLUDE_DIRS - The lib3ds include directories 5 | # LIB3DS_LIBRARIES - The libraries needed to use lib3ds 6 | # LIB3DS_DEFINITIONS - Compiler switches required for using lib3ds 7 | 8 | find_path(LIB3DS_INCLUDE_DIR "lib3ds/lib3ds.h") 9 | find_library(LIB3DS_LIBRARY NAMES lib3ds.lib PATH_SUFFIXES "/lib") 10 | 11 | set(LIB3DS_LIBRARIES ${LIB3DS_LIBRARY} ) 12 | set(LIB3DS_INCLUDE_DIRS ${LIB3DS_INCLUDE_DIR} ) 13 | 14 | include(FindPackageHandleStandardArgs) 15 | # handle the QUIETLY and REQUIRED arguments and set LIB3DS_FOUND to TRUE 16 | # if all listed variables are TRUE 17 | find_package_handle_standard_args(lib3ds DEFAULT_MSG 18 | LIB3DS_LIBRARY LIB3DS_INCLUDE_DIR) 19 | 20 | mark_as_advanced(LIB3DS_INCLUDE_DIR LIB3DS_LIBRARY ) -------------------------------------------------------------------------------- /dp/sg/io/DPAF/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DDPAFLOADER_EXPORTS 9 | ) 10 | 11 | if (MSVC) 12 | set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj" ) 13 | endif() 14 | 15 | #source 16 | set( DPAFLOADER_SOURCES 17 | DPAFLoader.cpp 18 | ) 19 | 20 | set( DPAFLOADER_HEADERS 21 | inc/DPAFLoader.h 22 | ) 23 | 24 | source_group(source FILES ${DPAFLOADER_SOURCES}) 25 | source_group(header FILES ${DPAFLOADER_HEADERS}) 26 | 27 | #target 28 | add_library( DPAFLoader SHARED 29 | ${DPAFLOADER_SOURCES} 30 | ${DPAFLOADER_HEADERS} 31 | ) 32 | 33 | target_link_libraries( DPAFLoader 34 | DP 35 | DPSgCore 36 | DPMath 37 | DPUtil 38 | DPFx 39 | DPSgIO 40 | ) 41 | 42 | set_target_properties( DPAFLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 43 | -------------------------------------------------------------------------------- /dp/sg/io/WRL/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}" 4 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 5 | ) 6 | 7 | #definitions 8 | add_definitions( 9 | -DWRLLOADER_EXPORTS 10 | -D_CRT_SECURE_NO_WARNINGS 11 | ) 12 | 13 | #sources 14 | set(WRLLOADER_SOURCES 15 | VRMLTypes.cpp 16 | WRLLoader.cpp 17 | ) 18 | 19 | set(WRLLOADER_HEADERS 20 | VRMLTypes.h 21 | inc/WRLLoader.h 22 | ) 23 | 24 | source_group(source FILES ${WRLLOADER_SOURCES}) 25 | source_group(header FILES ${WRLLOADER_HEADERS}) 26 | 27 | #target 28 | add_library( WRLLoader SHARED 29 | ${WRLLOADER_SOURCES} 30 | ${WRLLOADER_HEADERS} 31 | ) 32 | 33 | target_link_libraries( WRLLoader 34 | DP 35 | DPSgCore 36 | DPMath 37 | DPUtil 38 | DPFx 39 | DPSgIO 40 | ) 41 | 42 | set_target_properties( WRLLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 43 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_fileTexture.glsl: -------------------------------------------------------------------------------- 1 | 2 | _base_textureReturn mdl_base_fileTexture( in texture2D tex, in vec3 colorOffset, in vec3 colorScale, in int monoSource, in _base_textureCoordinateInfo uvw 3 | , in vec2 cropU, in vec2 cropV, in int wrapU, in int wrapV, in bool clip ) 4 | { 5 | _base_textureReturn tr; 6 | if ( clip && ( ( ( wrapU == wrap_clamp ) && ( ( uvw.position.x < 0.0f ) || ( 1.0f < uvw.position.x ) ) ) 7 | || ( ( wrapV == wrap_clamp ) && ( ( uvw.position.y < 0.0f ) || ( 1.0f < uvw.position.y ) ) ) ) ) 8 | { 9 | tr.tint = vec3( 0.0f, 0.0f, 0.0f ); 10 | tr.mono = 0.0f; 11 | } 12 | else 13 | { 14 | vec4 t4 = texture( tex.sampler, uvw.position.xy ); 15 | tr.tint = pow( t4.rgb, vec3( tex.gamma ) ) * colorScale + colorOffset; 16 | tr.mono = monoChannel( vec4( tr.tint, t4.w ), monoSource ); 17 | } 18 | return( tr ); 19 | } 20 | -------------------------------------------------------------------------------- /apps/GLUTMinimal/benchmark/benchmark.cmd: -------------------------------------------------------------------------------- 1 | REM run 'benchmark 2 | REM params.txt has the following format 3 | REM alias1;parameters for benchmark tool 4 | REM alias2;parameters for benchmark tool 5 | REM example: benchmark models *.nbf params.txt result.txt 6 | REM result.txt contains 7 | REM alias1;model1;fps 8 | REM alias2;model1;fps 9 | REM alias1;model2;fps 10 | REM alias2;model2;fps 11 | 12 | @ECHO off 13 | SETLOCAL enabledelayedexpansion 14 | set DPHOME= 15 | set MODELPATH=%1% 16 | set FILTER=%2% 17 | set RESULT=%4% 18 | set PARAMS=%3% 19 | dir /b %MODELPATH%\%FILTER% >models.txt 20 | 21 | erase /Q %RESULT% 22 | 23 | FOR /F "tokens=1 delims=," %%A IN (models.txt) DO ( 24 | SET MODELBASE=%1%\%%A 25 | FOR /F "tokens=1,2 delims=;" %%B IN (%PARAMS%) DO ( 26 | Bench.exe --filename %MODELPATH%\%%A %%C 27 | echo %%A,%%B,!ERRORLEVEL! >>%RESULT% 28 | ) 29 | ) 30 | -------------------------------------------------------------------------------- /dp/sg/io/DPAF/Saver/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | #includes 2 | include_directories( 3 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DDPAFSAVER_EXPORTS 9 | -D_CRT_SECURE_NO_WARNINGS 10 | ) 11 | 12 | if (MSVC) 13 | set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj" ) 14 | endif() 15 | 16 | #sources 17 | set( DPAFSAVER_SOURCES 18 | DPAFSaver.cpp 19 | ) 20 | 21 | set( DPAFSAVER_HEADERS 22 | inc/DPAFSaver.h 23 | ) 24 | 25 | source_group(source FILES ${DPAFSAVER_SOURCES}) 26 | source_group(header FILES ${DPAFSAVER_HEADERS}) 27 | 28 | #target 29 | add_library( DPAFSaver SHARED 30 | ${DPAFSAVER_SOURCES} 31 | ${DPAFSAVER_HEADERS} 32 | ) 33 | 34 | target_link_libraries( DPAFSaver 35 | DP 36 | DPSgCore 37 | DPMath 38 | DPUtil 39 | DPFx 40 | DPSgIO 41 | ) 42 | 43 | set_target_properties( DPAFSaver PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 44 | -------------------------------------------------------------------------------- /CMake/CopyFile.cmake: -------------------------------------------------------------------------------- 1 | MACRO(copy_file_if_changed target infile outfile) 2 | add_custom_command( TARGET ${target} 3 | POST_BUILD 4 | COMMAND ${CMAKE_COMMAND} 5 | ARGS -E copy_if_different "${infile}" "${outfile}" 6 | DEPENDS "${infile}" 7 | ) 8 | ENDMACRO() 9 | 10 | FUNCTION(copy_files_if_changed target) 11 | # get integer with last element index and target removed 12 | list(LENGTH ARGN list_count) 13 | math(EXPR list_max_index ${list_count}-2) 14 | if ( ${list_max_index} GREATER 0 ) 15 | list(GET ARGN -1 target_folder ) 16 | foreach(i RANGE ${list_max_index}) 17 | list(GET ARGN ${i} source) 18 | get_filename_component(basename "${source}" NAME) 19 | copy_file_if_changed( target "${source}" "${target_folder}/${basename}" ) 20 | endforeach() 21 | endif() 22 | ENDFUNCTION() 23 | -------------------------------------------------------------------------------- /apps/GLUTMinimalCFR/benchmark/benchmark.cmd: -------------------------------------------------------------------------------- 1 | REM run 'benchmark 2 | REM params.txt has the following format 3 | REM alias1;parameters for benchmark tool 4 | REM alias2;parameters for benchmark tool 5 | REM example: benchmark models *.nbf params.txt result.txt 6 | REM result.txt contains 7 | REM alias1;model1;fps 8 | REM alias2;model1;fps 9 | REM alias1;model2;fps 10 | REM alias2;model2;fps 11 | 12 | @ECHO off 13 | SETLOCAL enabledelayedexpansion 14 | set DPHOME= 15 | set MODELPATH=%1% 16 | set FILTER=%2% 17 | set RESULT=%4% 18 | set PARAMS=%3% 19 | dir /b %MODELPATH%\%FILTER% >models.txt 20 | 21 | erase /Q %RESULT% 22 | 23 | FOR /F "tokens=1 delims=," %%A IN (models.txt) DO ( 24 | SET MODELBASE=%1%\%%A 25 | FOR /F "tokens=1,2 delims=;" %%B IN (%PARAMS%) DO ( 26 | Bench.exe --filename %MODELPATH%\%%A %%C 27 | echo %%A,%%B,!ERRORLEVEL! >>%RESULT% 28 | ) 29 | ) 30 | -------------------------------------------------------------------------------- /media/dpfx/mdl/specularReflectionBSDF.glsl: -------------------------------------------------------------------------------- 1 | vec4 specularReflectionBSDF( in vec3 N, in vec3 L, in vec3 lightSpecular, in vec3 materialSpecular ) 2 | { 3 | const float shininess = 256.0f; 4 | 5 | vec4 rgba = vec4( 0.0f, 0.0f, 0.0f, 1.0f ); 6 | float cosTheta = dot( N, L ); 7 | if ( 0.0f < cosTheta ) 8 | { 9 | vec3 R = reflect( -L, N ); 10 | float cosAlpha = max( 0.0f, dot( R, viewDir ) ); 11 | float shine = pow( cosAlpha, shininess ); 12 | rgba.rgb = shine * lightSpecular * materialSpecular; 13 | } 14 | return( rgba ); 15 | } 16 | 17 | vec4 specularReflectionBSDFEnvironment( in vec3 N, in vec3 materialSpecular ) 18 | { 19 | vec3 rgb = vec3( 0.0f, 0.0f, 0.0f ); 20 | if ( sys_EnvironmentSamplerEnabled ) 21 | { 22 | vec3 R = reflect( -viewDir, N ); 23 | rgb = evalEnvironmentMap( R, 0.0f ); 24 | rgb = specularBSDF( N, R, rgb, rgb, materialSpecular ).rgb; 25 | } 26 | return( vec4( rgb, 1.0f ) ); 27 | } 28 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_perlinNoiseTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_perlinNoiseTexture( in _base_textureCoordinateInfo uvw, in vec3 color1, in vec3 color2, in float size, in bool applyMarble, in bool applyDent 2 | , in float noisePhase, in int noiseLevels, in bool absoluteNoise, bool ridgedNoise, in vec3 noiseDistortion 3 | , in float noiseThresholdHigh, in float noiseThresholdLow, in float noiseBands ) 4 | { 5 | vec3 scaledPos = uvw.position / size; 6 | float noise = applyNoiseModifications( summedPerlinNoise( scaledPos, noisePhase, noiseLevels, noiseDistortion, absoluteNoise, ridgedNoise ) 7 | , scaledPos.x, applyMarble, applyDent, noiseThresholdHigh, noiseThresholdLow, noiseBands ); 8 | 9 | _base_textureReturn tr; 10 | tr.tint = mix( color1, color2, noise ); 11 | tr.mono = average( tr.tint ); 12 | return( tr ); 13 | } 14 | 15 | -------------------------------------------------------------------------------- /dp/sg/generator/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | 4 | #definitions 5 | add_definitions( 6 | -DDP_SG_GENERATOR_EXPORTS 7 | ) 8 | 9 | #sources 10 | set(SOURCES 11 | src/MeshGenerator.cpp 12 | src/GeoSphereScene.cpp 13 | src/PreviewScene.cpp 14 | src/SimpleScene.cpp 15 | src/Terrain.cpp 16 | ) 17 | 18 | set(PRIVATE_HEADERS 19 | ) 20 | 21 | set(PUBLIC_HEADERS 22 | Config.h 23 | MeshGenerator.h 24 | GeoSphereScene.h 25 | PreviewScene.h 26 | SimpleScene.h 27 | Terrain.h 28 | ) 29 | 30 | source_group(source FILES ${SOURCES}) 31 | source_group(header FILES ${PRIVATE_HEADERS}) 32 | source_group("" FILES ${PUBLIC_HEADERS}) 33 | 34 | #target 35 | add_library( DPSgGenerator SHARED 36 | ${SOURCES} 37 | ${HEADERS} 38 | ${PUBLIC_HEADERS} 39 | ) 40 | 41 | target_link_libraries( DPSgGenerator 42 | DP 43 | DPSgCore 44 | DPSgIO 45 | ) 46 | 47 | set_target_properties( DPSgGenerator PROPERTIES FOLDER "DP/SG" ) 48 | -------------------------------------------------------------------------------- /test/rix/core/framework/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | include_directories( 4 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 5 | ) 6 | 7 | #definitions 8 | add_definitions( 9 | "-DDPTRIX_EXPORTS" 10 | "-D_CRT_SECURE_NO_WARNINGS" 11 | ) 12 | 13 | #sources 14 | set (DPTRIX_SOURCES 15 | src/RiXBackend.cpp 16 | ) 17 | 18 | set (DPTRIX_HEADERS 19 | inc/Config.h 20 | ) 21 | 22 | set (DPTRIX_PUBLIC_HEADERS 23 | RiXBackend.h 24 | ) 25 | 26 | source_group(headers FILES ${DPTRIX_HEADERS}) 27 | source_group(sources FILES ${DPTRIX_SOURCES}) 28 | source_group("" FILES ${DPTRIX_PUBLIC_HEADERS}) 29 | 30 | #target 31 | add_library( DPTRiX SHARED 32 | ${DPTRIX_SOURCES} 33 | ${DPTRIX_HEADERS} 34 | ${DPTRIX_PUBLIC_HEADERS} 35 | ) 36 | 37 | set_target_properties( DPTRiX PROPERTIES FOLDER "test/rix/core" ) 38 | 39 | target_link_libraries( DPTRiX 40 | DPTcore 41 | DPUtil 42 | RiXCore 43 | ) 44 | 45 | add_dependencies( DPTRiX DPUtil DPTcore ) -------------------------------------------------------------------------------- /test/rix/core/helpers/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | set( HELPERS_SOURCES 3 | src/Geometry.cpp 4 | src/GeometryHelper.cpp 5 | src/SimplexNoise1234.cpp 6 | src/TextureHelper.cpp 7 | src/Textures.cpp 8 | ) 9 | 10 | set( HELPERS_HEADERS 11 | Geometry.h 12 | GeometryHelper.h 13 | SimplexNoise1234.h 14 | TextureHelper.h 15 | Textures.h 16 | ) 17 | 18 | add_definitions( 19 | "-DDPHELPERS_EXPORTS" 20 | "-D_CRT_SECURE_NO_WARNINGS" 21 | ) 22 | 23 | source_group(headers FILES ${HELPERS_HEADERS}) 24 | source_group(sources FILES ${HELPERS_SOURCES}) 25 | 26 | add_library( DPHelpers SHARED 27 | ${HELPERS_SOURCES} 28 | ${HELPERS_HEADERS} 29 | ) 30 | 31 | add_dependencies( DPHelpers RiXCore ) 32 | 33 | target_link_libraries( DPHelpers 34 | "${OPENGL_gl_LIBRARY}" 35 | ${GLEW_LIBRARY} 36 | DPTcore 37 | DPUtil 38 | DPTRiX 39 | RiXCore 40 | DPMath 41 | ) 42 | 43 | set_target_properties( DPHelpers PROPERTIES FOLDER "test/rix/core") -------------------------------------------------------------------------------- /media/dpfx/mdl/applyNoiseModifications.glsl: -------------------------------------------------------------------------------- 1 | 2 | float applyNoiseModifications( in float value, in float position, in bool applyMarble, in bool applyDent, in float noiseThresholdHigh, in float noiseThresholdLow, in float noiseBands ) 3 | { 4 | float result = value; 5 | 6 | if ( applyMarble ) 7 | { 8 | // Classic Perlin marble function 9 | result = cos( position + result * 5.0f ); //!! 5.0f = magic 10 | } 11 | 12 | if ( applyDent ) 13 | { 14 | result = cube( result ); 15 | } 16 | 17 | if ( noiseBands != 1.0f ) 18 | { 19 | // Create banding/stripes by using the fraction component only 20 | result *= noiseBands; 21 | result -= floor( result ); 22 | result += pow( 1.0f - result, 20.0f ); 23 | } 24 | 25 | if ( noiseThresholdLow < noiseThresholdHigh ) 26 | { 27 | // clamp the noise 28 | result = clamp( ( result - noiseThresholdLow ) / ( noiseThresholdHigh - noiseThresholdLow ), 0.0f, 1.0f ); 29 | } 30 | 31 | return( result ); 32 | } 33 | -------------------------------------------------------------------------------- /test/testfw/app/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | find_package(NVPMAPI REQUIRED) 3 | 4 | #includes 5 | include_directories( 6 | ${NVPMAPI_INCLUDE_DIR} 7 | ) 8 | 9 | add_definitions( 10 | "-D_CRT_SECURE_NO_WARNINGS" 11 | ) 12 | 13 | if ( DPT_RENDERERAPI ) 14 | add_definitions( 15 | "-DDPT_RENDERERAPI" 16 | ) 17 | endif() 18 | 19 | link_directories( 20 | ) 21 | 22 | #sources 23 | set (DPTAPP_SOURCES 24 | src/App.cpp 25 | src/main.cpp 26 | ) 27 | 28 | set (DPTAPP_HEADERS 29 | App.h 30 | ) 31 | 32 | #target 33 | add_executable( DPTapp 34 | ${DPTAPP_SOURCES} 35 | ${DPTAPP_HEADERS} 36 | ) 37 | 38 | target_link_libraries( DPTapp 39 | DPUtil 40 | DPTcore 41 | ) 42 | 43 | if (NVPMAPI_FOUND) 44 | CopyNvPmApi( DPTapp ) 45 | endif() 46 | 47 | add_dependencies( DPTapp DPTcore DPFx ) 48 | 49 | source_group(headers FILES ${DPTAPP_HEADERS}) 50 | source_group(sources FILES ${DPTAPP_SOURCES}) 51 | 52 | set_target_properties( DPTapp PROPERTIES FOLDER "test/testfw" ) 53 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/calculateTessLevels_t2.glsl: -------------------------------------------------------------------------------- 1 | 2 | float calculateTessFactor( vec2 p0, vec2 p1 ) 3 | { 4 | return( max( distance( p0, p1 ) / tessellationAccuracy, 1.0f ) ); 5 | } 6 | 7 | void calculateTessLevels() 8 | { 9 | mat4 mvp = sys_ViewProjMatrix * sys_WorldMatrix; 10 | 11 | vec2 screenPosition[3]; 12 | for ( int i=0 ; i<3 ; i++ ) 13 | { 14 | vec4 p = mvp * vec4( vPosition[i], 1.0f ); 15 | p /= p.w; 16 | screenPosition[i] = 0.5f * ( p.xy * sys_ViewportSize + sys_ViewportSize ); 17 | } 18 | 19 | gl_TessLevelOuter[0] = calculateTessFactor( screenPosition[1], screenPosition[2] ); 20 | gl_TessLevelOuter[1] = calculateTessFactor( screenPosition[0], screenPosition[2] ); 21 | gl_TessLevelOuter[2] = calculateTessFactor( screenPosition[0], screenPosition[1] ); 22 | gl_TessLevelOuter[3] = 0.0f; 23 | 24 | gl_TessLevelInner[0] = max( max( gl_TessLevelOuter[0], gl_TessLevelOuter[1] ), gl_TessLevelOuter[2] ); 25 | gl_TessLevelInner[1] = 0.0f; 26 | } 27 | 28 | -------------------------------------------------------------------------------- /media/dpfx/mdl/summedPerlinNoise.glsl: -------------------------------------------------------------------------------- 1 | 2 | float summedPerlinNoise( in vec3 pos, in float time, in int terms, in vec3 turbulenceWeight, in bool absNoise, in bool ridged ) 3 | { 4 | float sum = 0.0f; 5 | float weight = ridged ? 0.625f : 1.0f; 6 | float prev = 1.0f; 7 | vec4 p = vec4( pos, time ); 8 | while ( terms-- != 0 ) 9 | { 10 | float noise = perlinNoise( p ); 11 | noise = ridged ? square( 1.0f - abs( noise ) ) : ( absNoise ? abs( noise ) : noise ); // ridged offset = 1.0f, could be configurable 12 | sum += weight * prev * noise; 13 | p += p; // frequency doubled, could be configurable 14 | weight *= 0.5f; // gain halfed, could be configurable 15 | if ( ridged ) 16 | { 17 | prev = noise; 18 | } 19 | } 20 | 21 | if ( turbulenceWeight != vec3( 0.0f, 0.0f, 0.0f ) ) 22 | { 23 | sum = sin( dot( pos, turbulenceWeight ) + sum ); 24 | } 25 | 26 | if ( ! absNoise && !ridged ) 27 | { 28 | sum = 0.5f * sum + 0.5f; // scale [-1,1] to [0,1] 29 | } 30 | 31 | return( sum ); 32 | } 33 | -------------------------------------------------------------------------------- /test/rix/gl/modules/benchmarks/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package( OpenGL REQUIRED ) 2 | find_package( GLEW REQUIRED ) 3 | 4 | FILE (GLOB tests ${linkunit}/*) 5 | 6 | set( LINK_SOURCES "" ) 7 | 8 | add_definitions( 9 | "-D_CRT_SECURE_NO_WARNINGS" 10 | ) 11 | 12 | FOREACH( test ${tests} ) 13 | if( IS_DIRECTORY ${test} ) 14 | if( EXISTS ${test}/CMakeLists.txt ) 15 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${test} ) 16 | if( NOT (${TEST_NAME} MATCHES "^__") ) 17 | add_subdirectory( ${TEST_NAME} ) 18 | endif() 19 | endif() 20 | endif() 21 | ENDFOREACH( test ${tests} ) 22 | 23 | include_directories( 24 | "${GLEW_INCLUDE_DIRS}" 25 | ) 26 | 27 | add_library( ${LINK_NAME} SHARED 28 | ${LINK_SOURCES} 29 | ) 30 | 31 | target_link_libraries( ${LINK_NAME} 32 | ${OPENGL_gl_LIBRARY} 33 | ${GLEW_LIB} 34 | DPTcore 35 | DPUtil 36 | DPTRiX 37 | RiXCore 38 | RiXGL 39 | DPTestManager 40 | DPHelpers 41 | ) 42 | 43 | add_dependencies( ${LINK_NAME} DPHelpers ) 44 | -------------------------------------------------------------------------------- /media/dpfx/mdl/specularTransmissionBSDF.glsl: -------------------------------------------------------------------------------- 1 | vec4 specularTransmissionBSDF( in vec3 N, in vec3 L, in vec3 lightSpecular, in vec3 materialSpecular, in float ior ) 2 | { 3 | const float shininess = 256.0f; 4 | 5 | vec4 rgba = vec4( 0.0f, 0.0f, 0.0f, 1.0f ); 6 | float cosTheta = dot( N, L ); 7 | 8 | // check against total reflection 9 | vec3 R = refract( -viewDir, N, ior ); 10 | if ( R == vec3( 0.0f, 0.0f, 0.0f ) ) 11 | { 12 | rgba.a = 1.0f; 13 | } 14 | else if ( mode == scatter_transmit ) 15 | { 16 | rgba.a = 0.0f; 17 | } 18 | else 19 | { 20 | rgba.a = 1.0f - luminance( materialSpecular ); 21 | } 22 | 23 | return( rgba ); 24 | } 25 | 26 | vec4 specularBSDFEnvironment( in vec3 N, in vec3 materialSpecular, in float ior ) 27 | { 28 | vec3 rgb = vec3( 0.0f, 0.0f, 0.0f ); 29 | if ( sys_EnvironmentSamplerEnabled ) 30 | { 31 | vec3 R = reflect( -viewDir, N ); 32 | rgb = evalEnvironmentMap( R, 0.0f ); 33 | rgb = specularBSDF( N, R, rgb, rgb, 1.0f, materialSpecular, scatter_reflect ).rgb; 34 | } 35 | return( vec4( rgb, 1.0f ) ); 36 | } 37 | -------------------------------------------------------------------------------- /dp/sg/ui/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | 4 | #sources 5 | set(SOURCES 6 | src/Manipulator.cpp 7 | src/Renderer.cpp 8 | src/RendererOptions.cpp 9 | src/SceneRenderer.cpp 10 | src/SceniXWidget.cpp 11 | src/Trackball.cpp 12 | src/ViewState.cpp 13 | ) 14 | 15 | set(PRIVATE_HEADERS 16 | ) 17 | 18 | set(PUBLIC_HEADERS 19 | Config.h 20 | HumanInterfaceDevice.h 21 | Manipulator.h 22 | Renderer.h 23 | RendererOptions.h 24 | SceneRenderer.h 25 | SceniXWidget.h 26 | Trackball.h 27 | ViewState.h 28 | ) 29 | 30 | source_group(source FILES ${SOURCES}) 31 | source_group(header FILES ${PRIVATE_HEADERS}) 32 | source_group("" FILES ${PUBLIC_HEADERS}) 33 | 34 | #target 35 | add_library( DPSgUI OBJECT 36 | ${SOURCES} 37 | ${HEADERS} 38 | ${PUBLIC_HEADERS} 39 | ) 40 | 41 | set_target_properties( DPSgUI PROPERTIES COMPILE_DEFINITIONS DP_SG_UI_EXPORTS ) 42 | 43 | add_subdirectory( manipulator ) 44 | 45 | add_subdirectory( qt5 ) 46 | add_subdirectory(glut) 47 | 48 | set_target_properties( DPSgUI PROPERTIES FOLDER "DP/SG/UI" ) 49 | -------------------------------------------------------------------------------- /media/dpfx/mdl/random255.glsl: -------------------------------------------------------------------------------- 1 | 2 | // random [0..255] calculated by some simple Linear Congruential Generator (LCG) 3 | // Verfied, that each function is just a permutation of {0,...,255}, that is, with 0<=x<=255, each value in [0,255] is returned once 4 | 5 | int rnd1( in int x ) 6 | { 7 | return( ( ( 26665 * ( x & 0xFF ) + 15537 ) >> 0 ) & 0xFF ); 8 | } 9 | 10 | int rnd2( in int x ) 11 | { 12 | return( ( ( 30726 * ( x & 0xFF ) + 19453 ) >> 1 ) & 0xFF ); 13 | } 14 | 15 | int rnd3( in int x ) 16 | { 17 | return( ( ( 31300 * ( x & 0xFF ) + 24493 ) >> 2 ) & 0xFF ); 18 | } 19 | 20 | int rnd4( in int x ) 21 | { 22 | return( ( ( 32007 * ( x & 0xFF ) + 642 ) >> 0 ) & 0xFF ); 23 | } 24 | 25 | int rnd5( in int x ) 26 | { 27 | return( ( ( 31607 * ( x & 0xFF ) + 19070 ) >> 0 ) & 0xFF ); 28 | } 29 | 30 | int rnd6( in int x ) 31 | { 32 | return( ( ( 30266 * ( x & 0xFF ) + 20594 ) >> 1 ) & 0xFF ); 33 | } 34 | 35 | int rnd7( in int x ) 36 | { 37 | return( ( ( 27884 * ( x & 0xFF ) + 18519 ) >> 2 ) & 0xFF ); 38 | } 39 | 40 | int rnd8( in int x ) 41 | { 42 | return( ( ( 12765 * ( x & 0xFF ) + 15702 ) >> 0 ) & 0xFF ); 43 | } 44 | 45 | -------------------------------------------------------------------------------- /dp/sg/gl/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package( OpenGL REQUIRED ) 2 | find_package( GLEW REQUIRED ) 3 | find_package( Boost COMPONENTS thread date_time ) 4 | 5 | #includes 6 | include_directories( 7 | ${GLEW_INCLUDE_DIRS} 8 | ) 9 | #definitions 10 | add_definitions( 11 | -DDP_SG_GL_EXPORTS 12 | ${GLEW_DEFINITIONS} 13 | ) 14 | 15 | #sources 16 | set(SOURCES 17 | src/BufferGL.cpp 18 | src/TextureGL.cpp 19 | ) 20 | 21 | set(PUBLIC_HEADERS 22 | BufferGL.h 23 | Config.h 24 | CoreTypes.h 25 | TextureGL.h 26 | ) 27 | 28 | set(PRIVATE_HEADERS 29 | ) 30 | 31 | source_group(sources FILES ${SOURCES}) 32 | source_group(headers FILES ${PRIVATE_HEADERS}) 33 | source_group("" FILES ${PUBLIC_HEADERS}) 34 | 35 | #target 36 | add_library( DPSgGL SHARED 37 | ${SOURCES} 38 | ${PUBLIC_HEADERS} 39 | ${PRIVATE_HEADERS} 40 | ) 41 | 42 | target_link_libraries( DPSgGL 43 | DPSgCore 44 | DPUtil 45 | DPGL 46 | ${GLEW_LIBRARY} 47 | ${Boost_LIBRARIES} 48 | ) 49 | 50 | CopyGLEW( DPSgGL "${DP_BINARY_PATH}" ) 51 | 52 | 53 | set_target_properties( DPSgGL PROPERTIES FOLDER "DP/SG" ) 54 | -------------------------------------------------------------------------------- /dp/sg/io/CSF/Saver/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | if(WIN32) 2 | #includes 3 | include_directories( 4 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 5 | ) 6 | 7 | #definitions 8 | add_definitions( 9 | -DCSFSAVER_EXPORTS 10 | -D_CRT_SECURE_NO_WARNINGS 11 | ) 12 | 13 | #sources 14 | set(CSFSAVER_SOURCES 15 | ExtractGeometryTraverser.cpp 16 | CSFSaver.cpp 17 | OffsetManager.cpp 18 | ) 19 | 20 | set(CSFSAVER_HEADERS 21 | inc/CSFSaver.h 22 | inc/ExtractGeometryTraverser.h 23 | inc/OffsetManager.h 24 | inc/CSFSGWrapper.h 25 | ) 26 | 27 | source_group(source FILES ${CSFSAVER_SOURCES}) 28 | source_group(header FILES ${CSFSAVER_HEADERS}) 29 | 30 | #target 31 | add_library( CSFSaver SHARED 32 | ${CSFSAVER_SOURCES} 33 | ${CSFSAVER_HEADERS} 34 | ) 35 | 36 | target_link_libraries( CSFSaver 37 | DPSgCore 38 | DPMath 39 | DPUtil 40 | DPFx 41 | DPSgIO 42 | ) 43 | 44 | set_target_properties( CSFSaver PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO" ) 45 | endif() 46 | -------------------------------------------------------------------------------- /dp/rix/core/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project( RiXCore ) 2 | 3 | find_package( Boost REQUIRED ) 4 | 5 | #includes 6 | include_directories( 7 | "${PROJECT_SOURCE_DIR}/inc" 8 | ${Boost_INCLUDE_DIRS} 9 | ) 10 | 11 | #definitions 12 | add_definitions( 13 | -DRIX_CORE_EXPORTS 14 | ) 15 | 16 | #sources 17 | set( SOURCES 18 | src/Renderer.cpp 19 | src/HandledObject.cpp 20 | ) 21 | 22 | set( PUBLIC_HEADERS 23 | HandledObject.h 24 | RendererConfig.h 25 | RiX.h 26 | ) 27 | 28 | source_group(sources FILES ${SOURCES}) 29 | source_group("" FILES ${PUBLIC_HEADERS}) 30 | 31 | add_library( RiXCore SHARED 32 | ${SOURCES} 33 | ${PUBLIC_HEADERS} 34 | ) 35 | 36 | target_link_libraries( RiXCore DPUtil ) 37 | 38 | set_target_properties( RiXCore PROPERTIES FOLDER "DP/RiX" ) 39 | 40 | if (WIN32 AND CMAKE_COMPILER_IS_GNUCC) 41 | # GCC requires the declspec(export) keyword behind the class keyword to export the vtable ( class declspec(export) MyKlass {} ). 42 | # Export everything for now and adopt sources later. 43 | set_target_properties( RiXCore PROPERTIES LINK_FLAGS "-Wl,--export-all" ) 44 | endif() 45 | -------------------------------------------------------------------------------- /CMake/FindNVfltLib.cmake: -------------------------------------------------------------------------------- 1 | # - Try to find fltlib 2 | # Once done this will define 3 | # FLTLIB_FOUND - System has fltlib 4 | # FLTLIB_INCLUDE_DIRS - The fltlib include directories 5 | # FLTLIB_LIBRARIES - The libraries needed to use fltlib 6 | # FLTLIB_DEFINITIONS - Compiler switches required for using fltlib 7 | 8 | file( TO_CMAKE_PATH "$ENV{DP_3RDPARTY_PATH}/fltLib/" FLTLIBROOT ) 9 | 10 | if ( EXISTS "${FLTLIBROOT}" ) 11 | set( FLTLIB_FOUND "true" ) 12 | set( FLTLIB_INCLUDE_DIRS "${FLTLIBROOT}" ) 13 | set( FLTLIB_LIBRARIES optimized "${FLTLIBROOT}/win32-msvc${MSVC_VERSION}-${DP_ARCH}/lib/Release/OpenFlight.lib" 14 | debug "${FLTLIBROOT}/win32-msvc${MSVC_VERSION}-${DP_ARCH}/lib/Debug/OpenFlight.lib" ) 15 | endif() 16 | 17 | 18 | include(FindPackageHandleStandardArgs) 19 | # handle the QUIETLY and REQUIRED arguments and set FLTLIB_FOUND to TRUE 20 | # if all listed variables are TRUE 21 | find_package_handle_standard_args(fltlib DEFAULT_MSG 22 | FLTLIB_LIBRARIES FLTLIB_INCLUDE_DIRS) 23 | 24 | mark_as_advanced(FLTLIB_INCLUDE_DIRS FLTLIB_LIBRARIES ) -------------------------------------------------------------------------------- /dp/culling/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPCulling) 2 | 3 | cmake_policy(SET CMP0022 OLD) 4 | 5 | add_definitions( 6 | "-DDP_CULLING_EXPORTS" 7 | "-D_CRT_SECURE_NO_WARNINGS" 8 | ) 9 | 10 | add_subdirectory( cpu ) 11 | add_subdirectory( opengl ) 12 | 13 | set(PUBLIC_HEADERS 14 | Config.h 15 | GroupBitSet.h 16 | Manager.h 17 | ManagerBitSet.h 18 | ObjectBitSet.h 19 | ResultBitSet.h 20 | ) 21 | 22 | set(HEADERS 23 | ) 24 | 25 | #let cmake determine linker language 26 | set(SOURCES 27 | src/GroupBitSet.cpp 28 | src/Manager.cpp 29 | src/ManagerBitSet.cpp 30 | src/ObjectBitSet.cpp 31 | src/ResultBitSet.cpp 32 | ) 33 | 34 | source_group(sources FILES ${SOURCES}) 35 | source_group(headers FILES ${HEADERS}) 36 | source_group("" FILES ${PUBLIC_HEADERS}) 37 | 38 | add_library(DPCulling SHARED 39 | ${PUBLIC_HEADERS} 40 | ${HEADERS} 41 | ${SOURCES} 42 | ) 43 | 44 | target_link_libraries( DPCulling DPCullingCPU DPCullingOpenGL ) 45 | 46 | set_property(TARGET DPCulling PROPERTY LINK_INTERFACE_LIBRARIES "") 47 | 48 | set_target_properties( DPCulling PROPERTIES FOLDER "DP/Culling" ) 49 | 50 | -------------------------------------------------------------------------------- /media/effects/xml/thinglass.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 25 | 26 | -------------------------------------------------------------------------------- /dp/rix/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | 3 | project( RiX ) 4 | 5 | SET( BUILD_DPT ON CACHE BOOL "Build DPT framework" ) 6 | 7 | option( RIX_BUILD_RIXFX "Build RiXFx with RiX" ON ) 8 | option( RIX_BUILD_RIXGL "Build RiXGL with RiX" ON ) 9 | 10 | if (CMAKE_COMPILER_IS_GNUCC) 11 | set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra") 12 | endif() 13 | 14 | if ( UNIX ) 15 | set( RENDERERAPI_3RDPARTY_PATH "$ENV{SCENIXHOME}/../../buildtools/Linux" CACHE STRING "Devtech platform party libraries & compilers" ) 16 | elseif ( WIN32 ) 17 | if ( "$ENV{DP_3RDPARTY_PATH}" STREQUAL "") 18 | set( RENDERERAPI_3RDPARTY_PATH "${DP_HOME}/../../3rdparty" CACHE STRING "Devtech platform party libraries & compilers" ) 19 | else() 20 | set( RENDERERAPI_3RDPARTY_PATH ${DP_3RDPARTY_PATH} ) 21 | endif() 22 | endif(UNIX) 23 | 24 | if (WIN32) 25 | add_definitions("-DNOMINMAX") 26 | endif(WIN32) 27 | 28 | include_directories( ${DP_HOME} ) 29 | add_subdirectory( core ) 30 | 31 | if( RIX_BUILD_RIXGL ) 32 | add_subdirectory( gl ) 33 | endif() 34 | 35 | if( RIX_BUILD_RIXFX ) 36 | add_subdirectory( fx ) 37 | endif() 38 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_flakeNoiseBumpTexture.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_base_flakeNoiseBumpTexture( in _base_textureCoordinateInfo uvw, in float scale, in float strength, in int noiseType, in float maximumSize, in int metric, in vec3 normal ) 2 | { 3 | vec3 pos = uvw.position / scale; 4 | 5 | float cellDistance = 0.0f; 6 | if ( noiseType == 1 ) 7 | { 8 | worleyReturn ret = worleyNoise( pos, 1.0f, metric ); 9 | cellDistance = ret.val.x; 10 | pos = ret.nearest_pos_0; 11 | } 12 | 13 | vec4 ret2 = miNoise( pos ); 14 | 15 | if ( noiseType == 0 ) 16 | { 17 | pos += ret2.xyz * 2.0f; // Displace the coordinate according to noise value 18 | 19 | // Then use only integer coordinates, to make flake transients "harder" and not "wobbly" 20 | ret2 = miNoise( ivec3( int(floor( pos.x )), int(floor( pos.y )), int(floor( pos.z ) ) ) ); 21 | } 22 | 23 | float reflectivity; 24 | if ( ( noiseType == 1 ) && ( maximumSize < cellDistance ) ) 25 | { 26 | ret2.xyz = vec3( 0.0f, 0.0f, 0.0f ); 27 | } 28 | 29 | return( normalize( normal * ( ret2.z * 1.0f / strength +1.0f ) + uvw.tangentU * ret2.x * 1.0f / strength + uvw.tangentV * ret2.y * 1.0f / strength ) ); 30 | } 31 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_gradient3BumpTexture.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_base_gradient3BumpTexture( in int gradientMode, in float[3] gradientPositions, in vec3[3] gradientColors, in int[3] interpolationModes 2 | , in _base_textureCoordinateInfo uvw, in float distortion, in float scale, in vec3 normal ) 3 | { 4 | const float delta = 0.0025f; // magic, looks good with this value 5 | 6 | float position = gradientGetPosition( gradientMode, uvw.position.xy ); 7 | vec3 r0 = mdl_base_gradient3Recolor( gradientPositions, gradientColors, interpolationModes, 0, distortion, position ).tint; 8 | 9 | position = gradientGetPosition( gradientMode, uvw.position.xy + delta * uvw.tangentU.xy ); 10 | vec3 r1 = mdl_base_gradient3Recolor( gradientPositions, gradientColors, interpolationModes, 0, distortion, position ).tint; 11 | 12 | position = gradientGetPosition( gradientMode, uvw.position.xy + delta * uvw.tangentV.xy ); 13 | vec3 r2 = mdl_base_gradient3Recolor( gradientPositions, gradientColors, interpolationModes, 0, distortion, position ).tint; 14 | 15 | return( normalize( normal - average( r1 - r0 ) * uvw.tangentU - average( r2 - r0 ) * uvw.tangentV ) ); 16 | } 17 | 18 | -------------------------------------------------------------------------------- /media/effects/xml/terrain/glsl/terrain_ts_tc.glsl: -------------------------------------------------------------------------------- 1 | // number of CPs in patch 2 | layout (vertices = 1) out; 3 | 4 | // from VS (use empty modifier [] so we can say anything) 5 | in ivec2 vs_gridPosition[]; 6 | 7 | // to evluation shader. will be used to guide positioning of generated points 8 | out ivec2 tc_gridPosition[]; 9 | 10 | in float tc_tessLevelMax[]; 11 | out float te_tessLevelMax[]; 12 | 13 | void main () { 14 | te_tessLevelMax[gl_InvocationID] = tc_tessLevelMax[gl_InvocationID]; 15 | 16 | tc_gridPosition[gl_InvocationID] = vs_gridPosition[gl_InvocationID] * ivec2(te_tessLevelMax[0]); 17 | 18 | // Calculate the tessellation levels 19 | gl_TessLevelInner[0] = te_tessLevelMax[0]; // number of nested primitives to generate 20 | gl_TessLevelInner[1] = te_tessLevelMax[0]; // number of nested primitives to generate 21 | gl_TessLevelOuter[0] = te_tessLevelMax[0]; // times to subdivide first side 22 | gl_TessLevelOuter[1] = te_tessLevelMax[0]; // times to subdivide second side 23 | gl_TessLevelOuter[2] = te_tessLevelMax[0]; // times to subdivide third side 24 | gl_TessLevelOuter[3] = te_tessLevelMax[0]; // times to subdivide third side 25 | } 26 | -------------------------------------------------------------------------------- /media/effects/xml/environment/environmentBackdropFragment.glsl: -------------------------------------------------------------------------------- 1 | #if 0 2 | 3 | // DAR Guessing: This path seem to fail when the sampler2D is defined but not used. 4 | // It will be reported as unreferenced by the GLSL compiler then and that might trigger a nullptr in location here: 5 | // 6 | // ParameterCache::updateContainer( ContainerGLHandle container ) 7 | // ==> CRASH: unsigned char *basePtr = &m_uniformData[0] + location.m_offset; 8 | 9 | void main(void) 10 | { 11 | Color = vec4( normalize( varTexCoord0 ) * 0.5f + 0.5f, 1.0f ); // Visualize the direction vectors used as texture lookup. 12 | } 13 | 14 | #else 15 | 16 | #ifndef M_PI 17 | #define M_PI 3.14159265358979f 18 | #endif 19 | 20 | // Spherical environment map backdrop. 21 | void main(void) 22 | { 23 | vec3 dir = normalize( varTexCoord0 ); // varTexCoord0 contains the vectors from the camera position to the corners of the view frustum. 24 | float phi = ( atan( dir.x, -dir.z ) + M_PI ) / ( 2.0f * M_PI ); // Map that direction onto the spherical environment texture longitude. 25 | Color = texture( environment, vec2( phi, acos( -dir.y ) / M_PI ) ); 26 | } 27 | 28 | #endif 29 | -------------------------------------------------------------------------------- /dp/fx/xml/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPFxXML) 2 | 3 | find_package(NVTinyXML) 4 | 5 | if (TINYXML_FOUND) 6 | 7 | #Need to define this since this lib will be linked to DPFx 8 | add_definitions( 9 | "-DDP_FX_EXPORTS" 10 | "-D_CRT_SECURE_NO_WARNINGS" 11 | ) 12 | 13 | include_directories( "${CMAKE_CURRENT_SOURCE_DIR}/inc" ) 14 | include_directories( ${TINYXML_INCLUDE_DIRS} ) 15 | 16 | set(PUBLIC_HEADERS 17 | Config.h 18 | EffectLoader.h 19 | ) 20 | 21 | #let cmake determine linker language 22 | set(SOURCES 23 | src/EffectLoader.cpp 24 | ) 25 | 26 | source_group(sources FILES ${SOURCES}) 27 | source_group("" FILES ${PUBLIC_HEADERS}) 28 | 29 | add_library(DPFxXML STATIC 30 | ${PUBLIC_HEADERS} 31 | ${SOURCES} 32 | ) 33 | 34 | target_link_libraries( DPFxXML DPUtil DPFxGLSL ${TINYXML_LIBRARIES} ) 35 | 36 | set_target_properties( DPFxXML PROPERTIES FOLDER "DP/Fx" ) 37 | 38 | if(UNIX) 39 | set_target_properties( DPFxXML PROPERTIES COMPILE_FLAGS -fPIC ) 40 | endif() 41 | 42 | target_include_symbol( DPFx dp_fx_xml_initialized ) 43 | else() 44 | message("TinyXML not found, disabling DPFxXML") 45 | endif() -------------------------------------------------------------------------------- /apps/Viewer/res/ui/HelpAbout.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 26 | 27 | 28 |

29 | 30 | SceniX Viewer 31 |
32 |
33 |

34 |

35 | Built on the NVIDIA SceniX 7 scene management engine. 36 |

37 |

2011 NVIDIA Corporation, NVIDIA, the NVIDIA logo, and SceniX are 38 | trademarks or registered trademarks of NVIDIA Corporation in the U.S. and/or other countries. 39 | All rights reserved. 40 |

41 | 42 | 43 | -------------------------------------------------------------------------------- /dp/sg/xbar/culling/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | include_directories( 4 | ) 5 | 6 | #definitions 7 | add_definitions( 8 | -DDP_SG_XBAR_CULLING_EXPORTS 9 | ) 10 | 11 | #sources 12 | set(XBAR_CULLING_SOURCES 13 | src/Culling.cpp 14 | src/CullingImpl.cpp 15 | src/ResultImpl.cpp 16 | ) 17 | 18 | set(XBAR_CULLING_PUBLIC_HEADERS 19 | Config.h 20 | Culling.h 21 | ) 22 | 23 | set(XBAR_CULLING_PRIVATE_HEADERS 24 | inc/ResultImpl.h 25 | inc/CullingImpl.h 26 | ) 27 | 28 | source_group(sources FILES ${XBAR_CULLING_SOURCES}) 29 | source_group(headers FILES ${XBAR_CULLING_PRIVATE_HEADERS}) 30 | source_group("" FILES ${XBAR_CULLING_PUBLIC_HEADERS}) 31 | 32 | #target 33 | add_library( DPSgXbarCulling SHARED 34 | ${XBAR_CULLING_SOURCES} 35 | ${XBAR_CULLING_PUBLIC_HEADERS} 36 | ${XBAR_CULLING_PRIVATE_HEADERS} 37 | ) 38 | 39 | target_link_libraries( DPSgXbarCulling 40 | DPSgCore 41 | DPUtil 42 | DPMath 43 | DPCulling 44 | DPCullingCPU 45 | DPCullingOpenGL 46 | ) 47 | 48 | set_target_properties( DPSgXbarCulling PROPERTIES FOLDER "DP/SG/Xbar" ) 49 | set_target_properties( DPSgXbarCulling PROPERTIES COMPILE_DEFINITIONS DP_SG_XBAR_CULLING_EXPORTS ) 50 | -------------------------------------------------------------------------------- /test/sgrdr/modules/sg_benchmarks/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package( OpenGL REQUIRED ) 2 | find_package( GLEW REQUIRED ) 3 | 4 | FILE (GLOB tests ${linkunit}/*) 5 | 6 | set( LINK_SOURCES "" ) 7 | 8 | add_definitions( 9 | "-D_CRT_SECURE_NO_WARNINGS" 10 | ) 11 | 12 | FOREACH( test ${tests} ) 13 | if( IS_DIRECTORY ${test} ) 14 | if( EXISTS ${test}/CMakeLists.txt ) 15 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${test} ) 16 | if( NOT (${TEST_NAME} MATCHES "^__") ) 17 | add_subdirectory( ${TEST_NAME} ) 18 | endif() 19 | endif() 20 | endif() 21 | ENDFOREACH( test ${tests} ) 22 | 23 | include_directories( 24 | "${GLEW_INCLUDE_DIRS}" 25 | ) 26 | 27 | if (TARGET DPTSgRdr) 28 | add_library( ${LINK_NAME} SHARED 29 | ${LINK_SOURCES} 30 | ) 31 | 32 | target_link_libraries( ${LINK_NAME} 33 | ${GLEW_LIBRARY} 34 | DPTcore 35 | DPUtil 36 | DPTRiX 37 | RiXCore 38 | RiXGL 39 | DPTestManager 40 | DPHelpers 41 | DPTSgRdr 42 | DPSgIO 43 | DPSgGenerator 44 | DPSgCore 45 | DPSgRdrRiXGL 46 | ) 47 | 48 | add_dependencies( ${LINK_NAME} DPHelpers ) 49 | 50 | endif() 51 | 52 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_flowNoiseBumpTexture.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_base_flowNoiseBumpTexture( in _base_textureCoordinateInfo uvw, in float factor, in float size, in float phase, in int levels, in bool absoluteNoise 2 | , in float levelGain, in float levelScale, in float levelProgressiveUScale, in float levelProgressiveVMotion, in vec3 normal ) 3 | { 4 | float delta = 0.1f * size; 5 | 6 | float r0 = flowNoise( uvw.position.xy / size, phase, levels, absoluteNoise, levelGain, levelScale, levelProgressiveUScale, levelProgressiveVMotion ); 7 | float r1 = flowNoise( ( uvw.position + delta * uvw.tangentU ).xy / size, phase, levels, absoluteNoise, levelGain, levelScale, levelProgressiveUScale, levelProgressiveVMotion ); 8 | float r2 = flowNoise( ( uvw.position + delta * uvw.tangentV ).xy / size, phase, levels, absoluteNoise, levelGain, levelScale, levelProgressiveUScale, levelProgressiveVMotion ); 9 | float r3 = flowNoise( ( uvw.position + delta * normal ).xy / size, phase, levels, absoluteNoise, levelGain, levelScale, levelProgressiveUScale, levelProgressiveVMotion ); 10 | 11 | return( normalize( normal - factor * ( ( r1 - r0 ) * uvw.tangentU + ( r2 - r0 ) * uvw.tangentV + ( r3 - r0 ) * normal ) ) ); 12 | } 13 | -------------------------------------------------------------------------------- /dp/cuda/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package(GLEW REQUIRED) 2 | find_package(CUDA) 3 | 4 | if (CUDA_FOUND) 5 | #includes 6 | include_directories( 7 | ${CUDA_INCLUDE_DIRS} 8 | ${GLEW_INCLUDE_DIRS} 9 | ) 10 | #definitions 11 | add_definitions( 12 | -DDP_CUDA_EXPORTS 13 | ${CUDA_DEFINITIONS} 14 | ${GLEW_DEFINITIONS} 15 | ) 16 | 17 | #sources 18 | set(SOURCES 19 | src/Buffer.cpp 20 | src/Buffer3D.cpp 21 | src/BufferHost.cpp 22 | src/Device.cpp 23 | src/Event.cpp 24 | src/GraphicsResource.cpp 25 | src/Stream.cpp 26 | ) 27 | 28 | set(HEADERS 29 | Buffer.h 30 | Buffer3D.h 31 | BufferHost.h 32 | Config.h 33 | Device.h 34 | Event.h 35 | GraphicsResource.h 36 | Stream.h 37 | Types.h 38 | ) 39 | 40 | source_group(sources FILES ${SOURCES}) 41 | source_group(headers FILES ${HEADERS}) 42 | 43 | #target 44 | cuda_add_library( DPCUDA SHARED 45 | ${SOURCES} 46 | ${HEADERS} 47 | ) 48 | 49 | target_link_libraries( DPCUDA 50 | DPGL 51 | DPUtil 52 | ) 53 | 54 | set_target_properties( DPCUDA PROPERTIES FOLDER "DP/CUDA" ) 55 | 56 | else() 57 | message("CUDA not found, disabling DPCUDA") 58 | endif() 59 | -------------------------------------------------------------------------------- /dp/sg/io/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | cmake_policy(SET CMP0020 OLD) 3 | 4 | FILE (GLOB linkunits ${CMAKE_CURRENT_SOURCE_DIR}/*) 5 | 6 | FOREACH( linkunit ${linkunits} ) 7 | if( IS_DIRECTORY ${linkunit} ) 8 | if( EXISTS ${linkunit}/CMakeLists.txt ) 9 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" LINK_NAME ${linkunit} ) 10 | add_subdirectory( ${LINK_NAME} ) 11 | endif() 12 | endif() 13 | ENDFOREACH( linkunit ${linkunits} ) 14 | 15 | 16 | #includes 17 | 18 | #definitions 19 | add_definitions( 20 | -DDP_SG_IO_EXPORTS 21 | ) 22 | 23 | #sources 24 | set(SOURCES 25 | src/IO.cpp 26 | src/PlugInterface.cpp 27 | ) 28 | 29 | set(PRIVATE_HEADERS 30 | ) 31 | 32 | set(PUBLIC_HEADERS 33 | Config.h 34 | IO.h 35 | PlugInterface.h 36 | PlugInterfaceID.h 37 | ) 38 | 39 | source_group(source FILES ${SOURCES}) 40 | source_group(header FILES ${PRIVATE_HEADERS}) 41 | source_group("" FILES ${PUBLIC_HEADERS}) 42 | 43 | #target 44 | add_library( DPSgIO SHARED 45 | ${SOURCES} 46 | ${HEADERS} 47 | ${PUBLIC_HEADERS} 48 | ) 49 | 50 | target_link_libraries( DPSgIO 51 | DPSgCore 52 | DPUtil 53 | ) 54 | 55 | set_target_properties( DPSgIO PROPERTIES FOLDER "DP/SG" ) 56 | -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/BezierTriangle.glsl: -------------------------------------------------------------------------------- 1 | 2 | // Evaluate a bezier triangle given by 10 vertices in bezierPoints at the sample point uvw 3 | // calculate normal at that point, as well 4 | vec3 evalBezierTriangle( in vec3 bezierPoints[10], in vec3 uvw, out vec3 normal ) 5 | { 6 | vec3 p10 = uvw.x * bezierPoints[0] + uvw.y * bezierPoints[1] + uvw.z * bezierPoints[4]; 7 | vec3 p11 = uvw.x * bezierPoints[1] + uvw.y * bezierPoints[2] + uvw.z * bezierPoints[5]; 8 | vec3 p12 = uvw.x * bezierPoints[2] + uvw.y * bezierPoints[3] + uvw.z * bezierPoints[6]; 9 | vec3 p13 = uvw.x * bezierPoints[4] + uvw.y * bezierPoints[5] + uvw.z * bezierPoints[7]; 10 | vec3 p14 = uvw.x * bezierPoints[5] + uvw.y * bezierPoints[6] + uvw.z * bezierPoints[8]; 11 | vec3 p15 = uvw.x * bezierPoints[7] + uvw.y * bezierPoints[8] + uvw.z * bezierPoints[9]; 12 | 13 | vec3 p20 = uvw.x * p10 + uvw.y * p11 + uvw.z * p13; 14 | vec3 p21 = uvw.x * p11 + uvw.y * p12 + uvw.z * p14; 15 | vec3 p22 = uvw.x * p13 + uvw.y * p14 + uvw.z * p15; 16 | 17 | vec3 p30 = uvw.x * p20 + uvw.y * p21 + uvw.z * p22; 18 | 19 | vec3 du = normalize( p21 - p20 ); 20 | vec3 dv = normalize( p22 - p20 ); 21 | normal = normalize( cross( du, dv ) ); 22 | 23 | return( p30 ); 24 | } 25 | -------------------------------------------------------------------------------- /dp/sg/io/XML/Loader/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package(NVTinyXML) 2 | 3 | if (TINYXML_FOUND) 4 | #includes 5 | include_directories( 6 | "${CMAKE_CURRENT_SOURCE_DIR}" 7 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 8 | include_directories( ${TINYXML_INCLUDE_DIRS} ) 9 | ) 10 | 11 | #definitions 12 | add_definitions( 13 | -DXMLLOADER_EXPORTS 14 | ) 15 | 16 | if(WIN32) 17 | add_definitions("/wd4996") 18 | endif() 19 | 20 | 21 | #sources 22 | set(XMLLOADER_SOURCES 23 | XMLLoader.cpp 24 | ) 25 | 26 | set(XMLLOADER_HEADERS 27 | XMLLoader.h 28 | ) 29 | 30 | source_group(source FILES ${XMLLOADER_SOURCES}) 31 | source_group(header FILES ${XMLLOADER_HEADERS}) 32 | 33 | #target 34 | add_library( XMLLoader SHARED 35 | ${XMLLOADER_SOURCES} 36 | ${XMLLOADER_HEADERS} 37 | ) 38 | 39 | target_link_libraries( XMLLoader 40 | DP 41 | DPSgCore 42 | DPMath 43 | DPUtil 44 | DPSgIO 45 | ${TINYXML_LIBRARIES} 46 | ) 47 | 48 | if (WIN32) 49 | set_target_properties( XMLLoader PROPERTIES LINK_FLAGS_DEBUG "/NODEFAULTLIB:msvcrt" ) 50 | endif(WIN32) 51 | 52 | set_target_properties( XMLLoader PROPERTIES SUFFIX ".nxm" FOLDER "DP/SG/IO") 53 | else() 54 | message("TinyXML not found, disabling XMLLoader") 55 | endif() 56 | -------------------------------------------------------------------------------- /media/dpfx/emitColorOITAllCounter.glsl: -------------------------------------------------------------------------------- 1 | // emitColor is the function called at the end of the fragment shader to emit the calculated color 2 | // There are a couple of emitColor functions (like in emitColorDepth.glsl, emitColorOITAllCounter.glsl, etc.) which reflect 3 | // the various needs of the various algorithms. 4 | 5 | // Version of emitColor() used in OITAll in the depth pass for transparent fragments. 6 | // This function counts the number of samples per fragment. That number of color values 7 | // needs to be gathered in the non-depth pass. 8 | 9 | // enable early depth test to prevent the expensive fragment shader on samples that 10 | // are already covered by opaque samples 11 | layout(early_fragment_tests) in; 12 | 13 | layout(size1x32) uniform restrict uimage2D perFragmentCount; // 2D image sized as the view to count the samples per fragment 14 | 15 | layout(location = 0, index = 0) out vec4 Color; 16 | 17 | void emitColor( in vec4 color ) 18 | { 19 | // atomically add one to the number of samples on this fragment (this is used in the transparent pass only!) 20 | imageAtomicAdd( perFragmentCount, ivec2( gl_FragCoord.xy ), uint(1) ); 21 | 22 | Color = vec4( 0 ); // the actual color doesn't matter, as this is just the depth pass 23 | } 24 | -------------------------------------------------------------------------------- /dp/math/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPMath) 2 | 3 | add_definitions("-DDP_MATH_EXPORTS") 4 | 5 | include_directories(${DP_HOME}) 6 | 7 | set(PUBLIC_HEADERS 8 | Beziernt.h 9 | Boxnt.h 10 | Config.h 11 | math.h 12 | Matmnt.h 13 | Planent.h 14 | Quatt.h 15 | Spherent.h 16 | Trafo.h 17 | Vecnt.h 18 | ) 19 | 20 | #let cmake determine linker language 21 | set(SOURCES 22 | src/Math.cpp 23 | src/Matmnt.cpp 24 | src/Quatt.cpp 25 | src/Trafo.cpp 26 | ) 27 | 28 | #sse versions 29 | set(PUBLIC_HEADERS_SSE 30 | sse/Matmnt.h 31 | sse/Mat44f.h 32 | sse/Vecnt.h 33 | sse/Vec4f.h 34 | ) 35 | 36 | #neon versions 37 | set(PUBLIC_HEADERS_NEON 38 | neon/Matmnt.h 39 | neon/Mat44f.h 40 | neon/Vecnt.h 41 | neon/Vec4f.h 42 | ) 43 | 44 | source_group(sources FILES ${SOURCES}) 45 | source_group("" FILES ${PUBLIC_HEADERS}) 46 | source_group("sse" FILES ${PUBLIC_HEADERS_SSE}) 47 | source_group("neon" FILES ${PUBLIC_HEADERS_NEON}) 48 | 49 | add_library(DPMath SHARED 50 | ${PUBLIC_HEADERS} 51 | ${PUBLIC_HEADERS_SSE} 52 | ${PUBLIC_HEADERS_NEON} 53 | ${SOURCES} 54 | ) 55 | 56 | if (WIN32) 57 | target_link_libraries( DPMath DPUtil ) 58 | endif() 59 | 60 | set_target_properties( DPMath PROPERTIES FOLDER "DP" ) 61 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_checkerBumpTexture.glsl: -------------------------------------------------------------------------------- 1 | vec3 mdl_base_checkerBumpTexture( in _base_textureCoordinateInfo uvw, in float factor, in float blur, in float checkerPosition, in vec3 normal ) 2 | { 3 | const float delta = 0.025f; // magic, looks good with this value 4 | const vec3 black = vec3( 0.0f, 0.0f, 0.0f ); 5 | const vec3 white = vec3( 1.0f, 1.0f, 1.0f ); 6 | 7 | _base_textureCoordinateInfo uvwLocal; 8 | uvwLocal.position = uvw.position + delta * vec3( 0.0f, 0.0f, 0.0f ); 9 | float r0 = mdl_math_luminance( mdl_base_checkerTexture( uvwLocal, black, white, blur, checkerPosition ).tint ); 10 | 11 | uvwLocal.position = uvw.position + delta * uvw.tangentU; 12 | float r1 = mdl_math_luminance( mdl_base_checkerTexture( uvwLocal, black, white, blur, checkerPosition ).tint ); 13 | 14 | uvwLocal.position = uvw.position + delta * uvw.tangentV; 15 | float r2 = mdl_math_luminance( mdl_base_checkerTexture( uvwLocal, black, white, blur, checkerPosition ).tint ); 16 | 17 | uvwLocal.position = uvw.position + delta * normal; 18 | float r3 = mdl_math_luminance( mdl_base_checkerTexture( uvwLocal, black, white, blur, checkerPosition ).tint ); 19 | 20 | return( normalize( normal - ( r1 - r0 ) * uvw.tangentU - ( r2 - r0 ) * uvw.tangentV - ( r3 - r0 ) * normal ) ); 21 | } 22 | 23 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_flakeNoiseTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_flakeNoiseTexture( in _base_textureCoordinateInfo uvw, in float intensity, in float scale, in float density, int noiseType, float maximumSize, int metric ) 2 | { 3 | vec3 pos = uvw.position / scale; 4 | 5 | float cellDistance = 0.0f; 6 | if ( noiseType == 1 ) 7 | { 8 | worleyReturn ret = worleyNoise( pos, 1.0f, metric ); 9 | cellDistance = ret.val.x; 10 | pos = ret.nearest_pos_0; 11 | } 12 | 13 | vec4 ret2 = miNoise( pos ); 14 | float scal = ret2.w; 15 | 16 | if ( noiseType == 0 ) 17 | { 18 | pos += ret2.xyz * 2.0f; // Displace the coordinate according to noise value 19 | 20 | // Then use only integer coordinates, to make flake transients "harder" and not "wobbly" 21 | scal = miNoise( ivec3( int(floor( pos.x )), int(floor( pos.y )), int(floor( pos.z ) ) ) ).w; 22 | } 23 | 24 | float reflectivity; 25 | if ( ( noiseType == 1 ) && ( maximumSize < cellDistance ) ) 26 | { 27 | reflectivity = 0.0f; 28 | } 29 | else 30 | { 31 | reflectivity = pow( scal, 1.0f / density ) * intensity; 32 | } 33 | 34 | _base_textureReturn tr; 35 | tr.tint = vec3( reflectivity, reflectivity, reflectivity ); 36 | tr.mono = reflectivity; 37 | return( tr ); 38 | } 39 | -------------------------------------------------------------------------------- /media/effects/xml/collada/glsl/colladaCommonBumpmap.glsl: -------------------------------------------------------------------------------- 1 | 2 | vec3 bumpmap( vec3 ns ) 3 | { 4 | if ( 0 <= bumpTC ) 5 | { 6 | // TODO Add parameter support for bumpiness 7 | float bumpiness = 1.0; 8 | 9 | ivec2 texSize = textureSize( bumpSampler, 0 ); 10 | 11 | // Offsets are not transformed on purpose to stay in texel space. 12 | vec2 offset = 1.0 / vec2( texSize.xy ); 13 | 14 | // Central differencing, 15 | vec2 texCoord = evaluateTexCoord( bumpTC ); 16 | float left = texture( bumpSampler, vec2( texCoord.x - offset.x, texCoord.y)).r; 17 | float right = texture( bumpSampler, vec2( texCoord.x + offset.x, texCoord.y)).r; 18 | float bottom = texture( bumpSampler, vec2( texCoord.x, texCoord.y - offset.y)).r; 19 | float top = texture( bumpSampler, vec2( texCoord.x, texCoord.y + offset.y)).r; 20 | 21 | // This resulting vector v.xyz was derived from an expanded cross product. 22 | vec3 v = vec3( left - right, bottom - top, 1.0 ); 23 | v.xy *= bumpiness; // With this a scale of 0.0 eliminates the bump effect! 24 | v = normalize(v); 25 | 26 | return v.x * normalize( varTangent ) + v.y * normalize( varBinormal ) + v.z * ns; 27 | } 28 | else 29 | { 30 | return ns; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /media/dpfx/oitAllResolveCounters_fs.glsl: -------------------------------------------------------------------------------- 1 | // main() of the resolve counters pass of OITAll (right after the depth pass) 2 | 3 | #version 420 4 | 5 | layout(size1x32) uniform restrict uimage1D counterAccu; // 1-element image to count all the samples 6 | layout(size1x32) uniform restrict uimage2D perFragmentCount; // 2D image sized as the view to count the samples per fragment 7 | layout(size1x32) uniform restrict writeonly uimage2D perFragmentOffset; // 2D image sized as the view holding the base offset per fragment 8 | 9 | layout(location = 0, index = 0) out vec4 Color; 10 | 11 | void main() 12 | { 13 | ivec2 screenPos = ivec2( gl_FragCoord.xy ); 14 | 15 | unsigned int count = imageLoad( perFragmentCount, screenPos ).x; 16 | 17 | // if there is at least one sample on this fragment 18 | if ( count != 0 ) 19 | { 20 | unsigned int offset = imageAtomicAdd( counterAccu, 0, count ); // add that count to the counterAcc 21 | imageStore( perFragmentOffset, screenPos, uvec4( offset ) ); // store the resulting offset for this fragment 22 | 23 | imageStore( perFragmentCount, screenPos, uvec4( 0 ) ); // and clear the per-fragment count 24 | } 25 | 26 | Color = vec4( 0 ); // color doesn't matter 27 | } 28 | -------------------------------------------------------------------------------- /test/rix/gl/modules/rix_tests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | find_package(OpenGL REQUIRED ) 3 | find_package(GLEW REQUIRED) 4 | 5 | FILE (GLOB tests ${linkunit}/*) 6 | 7 | set( LINK_SOURCES "" ) 8 | 9 | add_definitions( 10 | "-D_CRT_SECURE_NO_WARNINGS" 11 | ) 12 | 13 | FOREACH( test ${tests} ) 14 | if( IS_DIRECTORY ${test} ) 15 | if( EXISTS ${test}/CMakeLists.txt ) 16 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${test} ) 17 | if( NOT (${TEST_NAME} MATCHES "^__") ) 18 | add_subdirectory( ${TEST_NAME} ) 19 | endif() 20 | endif() 21 | endif() 22 | ENDFOREACH( test ${tests} ) 23 | 24 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" CUR_TEST_MODULE_NAME ${CMAKE_CURRENT_SOURCE_DIR} ) 25 | 26 | include_directories( 27 | "${GLEW_INCLUDE_DIRS}" 28 | ) 29 | 30 | add_definitions( 31 | "-DCURRENT_MODULE_NAME=\"${CUR_TEST_MODULE_NAME}\"" 32 | "-DCURRENT_MODULE_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}\"" 33 | ) 34 | 35 | add_library( ${LINK_NAME} SHARED 36 | ${LINK_SOURCES} 37 | ) 38 | 39 | target_link_libraries( ${LINK_NAME} 40 | ${GLEW_LIBRARY} 41 | DPTcore 42 | DPUtil 43 | DPTRiX 44 | RiXCore 45 | RiXGL 46 | DPTestManager 47 | DPMath 48 | DPHelpers 49 | DPGL 50 | ) 51 | 52 | add_dependencies( ${LINK_NAME} DPHelpers) -------------------------------------------------------------------------------- /dp/sg/ui/glut/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package(GLEW REQUIRED) 2 | find_package(GLUT) 3 | 4 | if (GLUT_FOUND) 5 | #includes 6 | include_directories( 7 | ${GLEW_INCLUDE_DIRS} 8 | ${GLUT_INCLUDE_DIR} 9 | ) 10 | 11 | #definitions 12 | add_definitions( 13 | -DDP_SG_UI_GLUT_EXPORTS 14 | ${GLEW_DEFINITIONS} 15 | ) 16 | 17 | #sources 18 | set(SOURCES 19 | src/SceneRendererWidget.cpp 20 | src/Widget.cpp 21 | ) 22 | 23 | set(PRIVATE_HEADERS 24 | ) 25 | 26 | set(PUBLIC_HEADERS 27 | Config.h 28 | SceneRendererWidget.h 29 | Widget.h 30 | ) 31 | 32 | source_group(source FILES ${SOURCES}) 33 | source_group(header FILES ${PRIVATE_HEADERS}) 34 | source_group("" FILES ${PUBLIC_HEADERS}) 35 | 36 | #target 37 | add_library( DPSgUIGLUT SHARED 38 | ${SOURCES} 39 | ${HEADERS} 40 | ${PUBLIC_HEADERS} 41 | ) 42 | 43 | target_link_libraries( DPSgUIGLUT 44 | DPSgCore 45 | DPGL 46 | ${GLEW_LIBRARY} 47 | ${GLUT_LIBRARIES} 48 | ${OPENGL_gl_LIBRARY} 49 | ) 50 | 51 | CopyGLEW( DPSgUIGLUT "${DP_BINARY_PATH}" ) 52 | CopyGLUT( DPSgUIGLUT "${DP_BINARY_PATH}" ) 53 | 54 | set_target_properties( DPSgUIGLUT PROPERTIES FOLDER "DP/SG/UI" ) 55 | else() 56 | message("GLUT not found, disalbing DpSgUIGLUT.") 57 | endif() -------------------------------------------------------------------------------- /dp/culling/opengl/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPCullingOpenGL) 2 | 3 | find_package(GLEW REQUIRED ) 4 | 5 | add_definitions( 6 | "-DDP_CULLING_EXPORTS" 7 | "-D_CRT_SECURE_NO_WARNINGS" 8 | ) 9 | 10 | include_directories( ${GLEW_INCLUDE_DIRS} ) 11 | 12 | #definitions 13 | add_definitions( 14 | ${GLEW_DEFINITIONS} 15 | ) 16 | 17 | set(PUBLIC_HEADERS 18 | Manager.h 19 | ) 20 | 21 | set(HEADERS 22 | inc/GroupImpl.h 23 | inc/ManagerImpl.h 24 | ) 25 | 26 | #let cmake determine linker language 27 | set(SOURCES 28 | src/GroupImpl.cpp 29 | src/ManagerImpl.cpp 30 | ) 31 | 32 | source_group(sources FILES ${SOURCES}) 33 | source_group(headers FILES ${HEADERS}) 34 | source_group("" FILES ${PUBLIC_HEADERS}) 35 | 36 | add_library(DPCullingOpenGL STATIC 37 | ${PUBLIC_HEADERS} 38 | ${HEADERS} 39 | ${SOURCES} 40 | ) 41 | 42 | CopyGLEW( DPCullingOpenGL "${DP_BINARY_PATH}" ) 43 | 44 | target_link_libraries( DPCullingOpenGL 45 | DPGL 46 | DPUtil 47 | DPMath 48 | ${OPENGL_gl_LIBRARY} 49 | ${GLEW_LIBRARY} 50 | ) 51 | 52 | set_property(TARGET DPCullingOpenGL PROPERTY LINK_INTERFACE_LIBRARIES "") 53 | 54 | set_target_properties( DPCullingOpenGL PROPERTIES FOLDER "DP/Culling" ) 55 | 56 | if(UNIX) 57 | set_target_properties( DPCullingOpenGL PROPERTIES COMPILE_FLAGS -fPIC ) 58 | endif() 59 | -------------------------------------------------------------------------------- /CMake/FindNVOpenEXR.cmake: -------------------------------------------------------------------------------- 1 | # - Try to find OpenEXR 2 | # Once done this will define 3 | # OPENEXR_FOUND - System has OpenEXR 4 | # OPENEXR_INCLUDE_DIRS - The OpenEXR include directories 5 | # OPENEXR_LIBRARIES - The libraries needed to use OpenEXR 6 | # OPENEXR_DEFINITIONS - Compiler switches required for using OpenEXR 7 | 8 | find_path(OPENEXR_INCLUDE_DIR "Iex.h") 9 | foreach(LIB Iex IlmImf IlmThread Imath Half) 10 | find_library(OPENEXR_${LIB}_LIBRARY_DEBUG NAMES ${LIB} PATH_SUFFIXES "/win32-${DP_ARCH}/lib/Debug") 11 | find_library(OPENEXR_${LIB}_LIBRARY_RELEASE NAMES ${LIB} PATH_SUFFIXES "/win32-${DP_ARCH}/lib/Release") 12 | 13 | list(APPEND OPENEXR_LIBRARIES debug ${OPENEXR_${LIB}_LIBRARY_DEBUG} optimized ${OPENEXR_${LIB}_LIBRARY_RELEASE}) 14 | list(APPEND OPENEXR_LIBRARIES_REQUIRED OPENEXR_${LIB}_LIBRARY_DEBUG OPENEXR_${LIB}_LIBRARY_RELEASE) 15 | endforeach() 16 | 17 | set(OPENEXR_INCLUDE_DIRS ${OPENEXR_INCLUDE_DIR} ) 18 | 19 | include(FindPackageHandleStandardArgs) 20 | # handle the QUIETLY and REQUIRED arguments and set LIBXML2_FOUND to TRUE 21 | # if all listed variables are TRUE 22 | find_package_handle_standard_args(OpenEXR DEFAULT_MSG 23 | ${OPENEXR_LIBRARIES_REQUIRED} OPENEXR_INCLUDE_DIR) 24 | 25 | mark_as_advanced(OPENEXR_INCLUDE_DIR ${OPENEXR_LIBRARIES_REQUIRED} ) -------------------------------------------------------------------------------- /media/effects/xml/standard_material/glsl/pntriangles_v3f_n3f_tes.glsl: -------------------------------------------------------------------------------- 1 | 2 | layout( triangles ) in; 3 | 4 | void main() 5 | { 6 | // construct a bezier triangle out of the given triangle, using the normals to calculate the missing vertices 7 | // Note: This calculates the bezierTriangle for each generated vertex. 8 | // Doing that calculation in the TCS (which means: do it per (original) vertex) and 9 | // - pass the 10 bezier points via patch out/in is slightly slower! 10 | // - pass the bezier points as 10 vertices (via layout( vertices = 10 ) out;) is substantially slower! 11 | // Note: copying positions and normals seems to be free 12 | vec3 positions[3], normals[3], bezierPoints[10]; 13 | for ( int i=0 ; i<3 ; i++ ) 14 | { 15 | positions[i] = tcPosition[i]; 16 | normals[i] = tcNormal[i]; 17 | } 18 | createBezierFromPNTriangle( positions, normals, bezierPoints ); 19 | 20 | vec3 normal; 21 | vec3 position = evalBezierTriangle( bezierPoints, gl_TessCoord, normal ); 22 | 23 | vec4 worldPos = sys_WorldMatrix * vec4( position, 1.0f ); 24 | varNormal = ( sys_WorldMatrixIT * vec4( normal, 0.0f ) ).xyz; 25 | varWorldPos = worldPos.xyz; 26 | varEyePos = vec3( sys_ViewMatrixI[3][0], sys_ViewMatrixI[3][1], sys_ViewMatrixI[3][2] ); 27 | gl_Position = sys_ViewProjMatrix * worldPos; 28 | } 29 | -------------------------------------------------------------------------------- /test/rix/gl/modules/gl_feature_tests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package(OpenGL REQUIRED ) 2 | find_package(GLEW REQUIRED) 3 | 4 | FILE (GLOB tests ${linkunit}/*) 5 | 6 | set( LINK_SOURCES "" ) 7 | 8 | add_definitions( 9 | "-D_CRT_SECURE_NO_WARNINGS" 10 | ) 11 | 12 | FOREACH( test ${tests} ) 13 | if( IS_DIRECTORY ${test} ) 14 | if( EXISTS ${test}/CMakeLists.txt ) 15 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" TEST_NAME ${test} ) 16 | if( NOT (${TEST_NAME} MATCHES "^__") ) 17 | add_subdirectory( ${TEST_NAME} ) 18 | endif() 19 | endif() 20 | endif() 21 | ENDFOREACH( test ${tests} ) 22 | 23 | string( REGEX REPLACE "^.*/([^/]*)$" "\\1" CUR_TEST_MODULE_NAME ${CMAKE_CURRENT_SOURCE_DIR} ) 24 | 25 | include_directories( 26 | "${GLEW_INCLUDE_DIRS}" 27 | ) 28 | 29 | add_definitions( 30 | "-DCURRENT_MODULE_NAME=\"${CUR_TEST_MODULE_NAME}\"" 31 | "-DCURRENT_MODULE_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}\"" 32 | ${GLEW_DEFINITIONS} 33 | ) 34 | 35 | add_library( ${LINK_NAME} SHARED 36 | ${LINK_SOURCES} 37 | ) 38 | 39 | add_dependencies( ${LINK_NAME} DPTestManager DPHelpers ) 40 | 41 | target_link_libraries( ${LINK_NAME} 42 | ${GLEW_LIBRARY} 43 | DPTcore 44 | DPUtil 45 | DPTRiX 46 | RiXCore 47 | RiXGL 48 | DPTestManager 49 | DPMath 50 | DPHelpers 51 | DPGL 52 | ) 53 | 54 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_tileTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_tileTexture( in _base_textureCoordinateInfo uvw, in vec3 tileColor, in vec3 groutColor, in float numberOfRows 2 | , in float numberOfColumns, in float groutWidth, in float groutHeight, in float groutRoughness 3 | , in float missingTileAmount, in float tileBrightnessVariation, in float seed, in int specialRowIndex 4 | , in float specialRowWidthFactor, in int specialColumnIndex, in float specialColumnHeightFactor 5 | , in float oddRowOffset, in float randomRowOffset ) 6 | { 7 | vec2 numColsRows = vec2( numberOfColumns, numberOfRows ); 8 | ivec2 specialColRowIndex = ivec2( specialColumnIndex, specialRowIndex ); 9 | vec2 specialColRowSizeFactor = vec2( specialColumnHeightFactor, specialRowWidthFactor ); 10 | vec2 groutSize = vec2( groutWidth, groutHeight ); 11 | int r = evalTileFunction( uvw.position.xy, numColsRows, specialColRowIndex, specialColRowSizeFactor, oddRowOffset, randomRowOffset 12 | , seed, missingTileAmount, groutSize, groutRoughness, tileBrightnessVariation, tileColor, true ); 13 | 14 | _base_textureReturn tr; 15 | tr.tint = ( r != 0 ) ? tileColor : groutColor; 16 | tr.mono = 0.0f; 17 | return( tr ); 18 | } 19 | 20 | -------------------------------------------------------------------------------- /media/dpfx/mdl/evalEnvironmentMap.glsl: -------------------------------------------------------------------------------- 1 | vec3 evalEnvironmentMap( in vec3 R, in float roughness ) 2 | { 3 | // convert R to 2D 4 | vec2 tc = vec2( ( atan( R.x, -R.z ) + PI ) / ( 2.0f * PI ), acos( -R.y ) / PI ); 5 | 6 | // Due to discontinuity of atan2 at PI and -PI, standard texture sampling 7 | // produces a seam of pixels sampled from the lowest mip level because 8 | // dFdx and dFdy of the latitude are artificially high. To remedy this we 9 | // approximate the magnitude of the derivative of latitude analytically 10 | // and use our own gradients. 11 | 12 | // Compute dx and dy 13 | // The 2*PI factor transforms from a derivative in radians to a derivative in texture space. 14 | vec2 dx = vec2( length( dFdx( R.xy ) ) / ( 2 * PI ), dFdx( tc.y ) ); 15 | vec2 dy = vec2( length( dFdy( R.xy ) ) / ( 2 * PI ), dFdy( tc.y ) ); 16 | 17 | // determine the corresponding lod level 18 | ivec2 envMapSize = textureSize( sys_EnvironmentSampler, 0 ); 19 | vec2 lodMapSize = envMapSize * max( dx, dy ); 20 | float lodLevel = log2( max( lodMapSize.x, lodMapSize.y ) ); 21 | 22 | // determine the maximal lod level 23 | float maxLevel = log2( max( envMapSize.x, envMapSize.y ) ); 24 | 25 | // mix lodLevel and maxLevel with roughness 26 | float roughLevel = mix( lodLevel, maxLevel, roughness ); 27 | 28 | return( textureLod( sys_EnvironmentSampler, tc, roughLevel ).rgb ); 29 | } 30 | -------------------------------------------------------------------------------- /media/effects/xml/environment.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 33 | 34 | -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_worleyNoiseBumpTexture.glsl: -------------------------------------------------------------------------------- 1 | 2 | vec3 mdl_base_worleyNoiseBumpTexture( in _base_textureCoordinateInfo uvw, in float factor, in float size, in int mode, in int metric, in bool applyMarble, in bool applyDent 3 | , in vec3 noiseDistortion, in float noiseThresholdHigh, in float noiseThresholdLow, in float noiseBands, in float stepThreshold, in float edge, in vec3 normal ) 4 | { 5 | float delta = 0.1f * size / noiseBands; //!! magic 6 | 7 | vec3[4] offsets; 8 | offsets[0] = vec3( 0.0f, 0.0f, 0.0f ); 9 | offsets[1] = vec3( delta, 0.0f, 0.0f ); 10 | offsets[2] = vec3( 0.0f, delta, 0.0f); 11 | offsets[3] = vec3( 0.0f, 0.0f, delta ); 12 | float[4] results; 13 | for ( int i=0 ; i<4 ; i++ ) 14 | { 15 | vec3 scaledPosition = ( uvw.position + offsets[i] ) / size; 16 | results[i] = applyNoiseModifications( worleyNoise( scaledPosition, noiseDistortion, stepThreshold, mode, metric, 1.0f ) 17 | , scaledPosition.x, applyMarble, applyDent, noiseThresholdHigh, noiseThresholdLow, noiseBands ); 18 | } 19 | 20 | float bump_factor = -factor; 21 | 22 | return( normalize( normal * ( abs( ( results[3] - results[0] ) * bump_factor ) + 1.0f ) 23 | + uvw.tangentU * ( results[1] - results[0] ) * bump_factor 24 | + uvw.tangentV * ( results[2] - results[0] ) * bump_factor ) ); 25 | } 26 | -------------------------------------------------------------------------------- /dp/sg/xbar/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | #includes 3 | include_directories( 4 | ${SCENIX_INCLUDES} 5 | "${CMAKE_CURRENT_SOURCE_DIR}/inc" 6 | ) 7 | 8 | #definitions 9 | add_definitions( 10 | -DDP_SG_XBAR_EXPORTS 11 | ) 12 | 13 | #sources 14 | set(XBAR_SOURCES 15 | src/DrawableManager.cpp 16 | src/GeoNodeObserver.cpp 17 | src/GeneratorState.cpp 18 | src/ObjectObserver.cpp 19 | src/SceneObserver.cpp 20 | src/SceneTree.cpp 21 | src/SceneTreeGenerator.cpp 22 | src/SwitchObserver.cpp 23 | src/TransformObserver.cpp 24 | src/TransformTree.cpp 25 | ) 26 | 27 | set(XBAR_PUBLIC_HEADERS 28 | DrawableManager.h 29 | ObjectTree.h 30 | SceneTree.h 31 | TransformTree.h 32 | Tree.h 33 | TreeResourceGroup.h 34 | xbar.h 35 | ) 36 | 37 | set(XBAR_PRIVATE_HEADERS 38 | inc/GeneratorState.h 39 | inc/GeoNodeObserver.h 40 | inc/ObjectObserver.h 41 | inc/Observer.h 42 | inc/SceneObserver.h 43 | inc/SceneTreeGenerator.h 44 | inc/SwitchObserver.h 45 | inc/TransformObserver.h 46 | inc/UpdateObjectVisitor.h 47 | ) 48 | 49 | source_group(sources FILES ${XBAR_SOURCES}) 50 | source_group(headers FILES ${XBAR_PRIVATE_HEADERS}) 51 | source_group("" FILES ${XBAR_PUBLIC_HEADERS}) 52 | 53 | #target 54 | add_library( DPSgXbar OBJECT 55 | ${XBAR_SOURCES} 56 | ${XBAR_PUBLIC_HEADERS} 57 | ${XBAR_PRIVATE_HEADERS} 58 | ) 59 | 60 | set_target_properties( DPSgXbar PROPERTIES FOLDER "DP/SG/Xbar" ) 61 | 62 | add_subdirectory( culling ) -------------------------------------------------------------------------------- /media/dpfx/mdl/mdl_base_checkerTexture.glsl: -------------------------------------------------------------------------------- 1 | _base_textureReturn mdl_base_checkerTexture( in _base_textureCoordinateInfo uvw, in vec3 color1, in vec3 color2, in float blur, in float checkerPosition ) 2 | { 3 | // Get the fractional uv 4 | vec3 tex = uvw.position - floor( uvw.position ); 5 | vec3 relTex = tex - checkerPosition; 6 | 7 | // Determine what part of the checker we're in 8 | ivec3 intTex = floatBitsToInt( relTex ); 9 | bool inColOne = ( ( intTex.x ^ intTex.y ^ intTex.z ) < 0 ); 10 | 11 | // Calculate distance to the closest edge in each dimension 12 | vec3 edgeDist = min( tex, min( 1.0f - tex, abs( relTex ) ) ); 13 | 14 | // Calculate the amount of blending for each dimension, where 1.0 means no blending and 0.0 means full blending. 15 | // Total amout of blending by combining the blends from all dimensions to get smoother corners. 16 | // Scaled to [0.0, 0.5]. 17 | float blendAmount = ( edgeDist.x < blur ) ? edgeDist.x / blur : 1.0f; 18 | if ( edgeDist.y < blur ) 19 | { 20 | blendAmount *= edgeDist.y / blur; 21 | } 22 | // for 2D textures, edgeDist.z is always zero, and thus would set blendAmount to zero 23 | if ( edgeDist.z < blur ) 24 | { 25 | blendAmount *= edgeDist.z / blur; 26 | } 27 | blendAmount *= 0.5f; 28 | 29 | _base_textureReturn tr; 30 | tr.tint = mix( color2, color1, inColOne ? 0.5f + blendAmount : 0.5f - blendAmount ); 31 | tr.mono = 0; 32 | return( tr ); 33 | } 34 | 35 | -------------------------------------------------------------------------------- /dp/fx/glsl/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(DPFxGLSL) 2 | 3 | #Need to define this since this lib will be linked to DPFx 4 | add_definitions( 5 | "-DDP_FX_EXPORTS" 6 | "-D_CRT_SECURE_NO_WARNINGS" 7 | ) 8 | 9 | include_directories( "${CMAKE_CURRENT_SOURCE_DIR}/inc" ) 10 | 11 | set(PUBLIC_HEADERS 12 | Config.h 13 | ParameterInfo.h 14 | UniformGenerator.h 15 | UniformGeneratorGLSL.h 16 | UniformGeneratorGLSLStandard.h 17 | UniformGeneratorGLSLShaderBufferLoad.h 18 | UniformGeneratorUBOStd140.h 19 | UniformGeneratorSSBOStd140.h 20 | ) 21 | 22 | set(HEADERS 23 | inc/ParameterInfoShaderBufferLoad.h 24 | ) 25 | 26 | #let cmake determine linker language 27 | set(SOURCES 28 | src/ParameterInfoShaderBufferLoad.cpp 29 | src/ParameterInfoUBOStd140.cpp 30 | src/UniformGenerator.cpp 31 | src/UniformGeneratorGLSL.cpp 32 | src/UniformGeneratorGLSLStandard.cpp 33 | src/UniformGeneratorGLSLShaderBufferLoad.cpp 34 | src/UniformGeneratorUBOStd140.cpp 35 | src/UniformGeneratorSSBOStd140.cpp 36 | ) 37 | 38 | source_group(headers FILES ${HEADERS}) 39 | source_group(sources FILES ${SOURCES}) 40 | source_group("" FILES ${PUBLIC_HEADERS}) 41 | 42 | add_library(DPFxGLSL STATIC 43 | ${PUBLIC_HEADERS} 44 | ${HEADERS} 45 | ${SOURCES} 46 | ) 47 | 48 | set_target_properties( DPFxGLSL PROPERTIES FOLDER "DP/Fx" ) 49 | 50 | if(UNIX) 51 | set_target_properties( DPFxGLSL PROPERTIES COMPILE_FLAGS -fPIC ) 52 | endif() 53 | --------------------------------------------------------------------------------