├── .gitmodules ├── CMakeLists.txt ├── README.md └── source ├── Borland C++ 版について.txt ├── DxASyncLoad.cpp ├── DxASyncLoad.h ├── DxArchive_.cpp ├── DxArchive_.h ├── DxBaseFunc.cpp ├── DxBaseFunc.h ├── DxBaseImage.cpp ├── DxBaseImage.h ├── DxChar.cpp ├── DxChar.h ├── DxCharCodeTable.cpp ├── DxCompileConfig.h ├── DxDataType.h ├── DxDataTypeWin.h ├── DxDrawFuncBorland.bdp ├── DxDrawFuncMake.sln ├── DxDrawFuncMake.vcproj ├── DxFile.cpp ├── DxFile.h ├── DxFont.cpp ├── DxFont.h ├── DxFunctionWin.h ├── DxGateway.cpp ├── DxGraphics.cpp ├── DxGraphics.h ├── DxGraphicsFilter.cpp ├── DxGraphicsFilter.h ├── DxHandle.cpp ├── DxHandle.h ├── DxHeap.cpp ├── DxHeap.h ├── DxInput.cpp ├── DxInput.h ├── DxInputString.cpp ├── DxInputString.h ├── DxLib.h ├── DxLib.txt ├── DxLibBorland.bdp ├── DxLibMake.sln ├── DxLibMake.vcxproj ├── DxLibMake.vcxproj.filters ├── DxLibMake.vcxproj.user ├── DxLog.cpp ├── DxLog.h ├── DxLog.txt ├── DxMask.cpp ├── DxMask.h ├── DxMath.cpp ├── DxMath.h ├── DxMemImg.cpp ├── DxMemImg.h ├── DxMemImgDrawFunction0.cpp ├── DxMemImgDrawFunction1.cpp ├── DxMemImgDrawFunction2.cpp ├── DxMemImgDrawFunction3.cpp ├── DxMemory.cpp ├── DxMemory.h ├── DxModel.cpp ├── DxModel.h ├── DxModelFile.h ├── DxModelLoader0.cpp ├── DxModelLoader1.cpp ├── DxModelLoader2.cpp ├── DxModelLoader3.cpp ├── DxModelLoader3.h ├── DxModelLoader4.cpp ├── DxModelLoader4.h ├── DxModelLoaderVMD.cpp ├── DxModelLoaderVMD.h ├── DxModelRead.cpp ├── DxModelRead.h ├── DxMovie.cpp ├── DxMovie.h ├── DxNetwork.cpp ├── DxNetwork.h ├── DxRingBuffer.cpp ├── DxRingBuffer.h ├── DxSoftImage.cpp ├── DxSoftImage.h ├── DxSound.cpp ├── DxSound.h ├── DxSoundConvert.cpp ├── DxSoundConvert.h ├── DxStatic.h ├── DxSystem.cpp ├── DxSystem.h ├── DxThread.cpp ├── DxThread.h ├── DxUseCLib スタティックリンクライブラリについて.txt ├── DxUseCLib.cpp ├── DxUseCLib.h ├── DxUseCLibOgg.cpp ├── DxUseCLibOgg.h ├── DxUseCLibPhysics.cpp ├── Shader └── Windows │ ├── Direct3D11 │ ├── Base │ │ ├── Base_2D_VS.hlsl │ │ ├── Base_3D_PixelLighting_PS.hlsl │ │ ├── Base_3D_PixelLighting_VS.hlsl │ │ ├── Base_3D_Simple_VS.hlsl │ │ ├── Base_3D_VertexLighting_PS.hlsl │ │ ├── Base_3D_VertexLighting_VS.hlsl │ │ └── Base_PS.hlsl │ ├── DataType.h │ ├── Filter │ │ ├── BasicBlendFilter_PS.hlsl │ │ ├── BrightnessClip_PS.hlsl │ │ ├── BrightnessScale_PS.hlsl │ │ ├── DownScale_PS.hlsl │ │ ├── Gauss_PS.hlsl │ │ ├── GradientMap_PS.hlsl │ │ ├── Hsb_PS.hlsl │ │ ├── Invert_PS.hlsl │ │ ├── Level_PS.hlsl │ │ ├── Mono_PS.hlsl │ │ ├── PremultipliedAlpha_PS.hlsl │ │ ├── RgbaSelectMix_PS.hlsl │ │ ├── TwoColor_PS.hlsl │ │ └── YuvToRgb_PS.hlsl │ ├── MV1DefaultShader │ │ ├── MV1Default_PixelLighting_PS.hlsl │ │ ├── MV1Default_PixelLighting_VS.hlsl │ │ ├── MV1Default_VertexLighting_PS.hlsl │ │ └── MV1Default_VertexLighting_VS.hlsl │ ├── PixelShader.h │ └── VertexShader.h │ └── Direct3D9 │ ├── Base.fx │ ├── BaseVertexShader.fx │ ├── BasicBlendFilter.fx │ ├── BrightnessClip.fx │ ├── BrightnessScale.fx │ ├── DownScale.fx │ ├── DxPixelShaderFxCode.h │ ├── DxPixelShaderFxCode2.h │ ├── DxVertexShaderFxCode.h │ ├── DxVertexShaderFxCode2.h │ ├── Gauss.fx │ ├── GradientMap.fx │ ├── Hsb.fx │ ├── Hsi.fx │ ├── Invert.fx │ ├── Level.fx │ ├── MV1PixelShaderDefault.fx │ ├── MV1PixelShaderDefault2.fx │ ├── MV1VertexShaderDefault.fx │ ├── MV1VertexShaderDefault2.fx │ ├── Mono.fx │ ├── PremultipliedAlpha.fx │ ├── RgbaSelectMix.fx │ ├── TwoColor.fx │ └── YuvToRgb.fx ├── Tool ├── FileLib.cpp ├── FileLib.h └── bullet_rename.cpp ├── Windows ├── DxBaseFuncWin.cpp ├── DxBaseFuncWin.h ├── DxBaseImageWin.cpp ├── DxBaseImageWin.h ├── DxDirectX.h ├── DxFileWin.cpp ├── DxFileWin.h ├── DxFontWin.cpp ├── DxFontWin.h ├── DxGraphicsAPIWin.cpp ├── DxGraphicsAPIWin.h ├── DxGraphicsD3D11.cpp ├── DxGraphicsD3D11.h ├── DxGraphicsD3D9.cpp ├── DxGraphicsD3D9.h ├── DxGraphicsFilterD3D11.cpp ├── DxGraphicsFilterD3D11.h ├── DxGraphicsFilterD3D9.cpp ├── DxGraphicsFilterD3D9.h ├── DxGraphicsFilterWin.cpp ├── DxGraphicsFilterWin.h ├── DxGraphicsWin.cpp ├── DxGraphicsWin.h ├── DxGuid.cpp ├── DxGuid.h ├── DxInputWin.cpp ├── DxInputWin.h ├── DxKeyHook.c ├── DxKeyHookBinary.cpp ├── DxLogWin.cpp ├── DxLogWin.h ├── DxMaskD3D11.cpp ├── DxMaskD3D11.h ├── DxMaskD3D9.cpp ├── DxMaskD3D9.h ├── DxMaskWin.cpp ├── DxMaskWin.h ├── DxMemoryWin.cpp ├── DxMemoryWin.h ├── DxModelD3D11.cpp ├── DxModelD3D11.h ├── DxModelD3D9.cpp ├── DxModelD3D9.h ├── DxModelWin.cpp ├── DxModelWin.h ├── DxMovieWin.cpp ├── DxMovieWin.h ├── DxNetworkWin.cpp ├── DxNetworkWin.h ├── DxShaderCodeBin_Base3D_D3D11.cpp ├── DxShaderCodeBin_Base_D3D11.cpp ├── DxShaderCodeBin_Base_D3D9.cpp ├── DxShaderCodeBin_Filter_D3D11.cpp ├── DxShaderCodeBin_Filter_D3D9.cpp ├── DxShaderCodeBin_Model_D3D11.cpp ├── DxShaderCodeBin_Model_D3D9.cpp ├── DxShaderCodeBin_RgbaMix_D3D11.cpp ├── DxShaderCodeBin_RgbaMix_D3D9.cpp ├── DxShader_Common_D3D11.h ├── DxShader_DataType_D3D11.h ├── DxShader_PS_D3D11.h ├── DxShader_PS_D3D9.h ├── DxShader_VS_D3D11.h ├── DxShader_VS_D3D9.h ├── DxSoundConvertWin.cpp ├── DxSoundConvertWin.h ├── DxSoundWin.cpp ├── DxSoundWin.h ├── DxSystemWin.cpp ├── DxSystemWin.h ├── DxThreadWin.cpp ├── DxThreadWin.h ├── DxUseCLibOggD3D11.cpp ├── DxUseCLibOggD3D11.h ├── DxUseCLibOggD3D9.cpp ├── DxUseCLibOggD3D9.h ├── DxUseCLibOggWin.cpp ├── DxUseCLibOggWin.h ├── DxUseCStrmBaseFilter.cpp ├── DxUseCStrmBaseFilter.h ├── DxWinAPI.cpp ├── DxWinAPI.h ├── DxWindow.cpp └── DxWindow.h └── DXライブラリソースファイル概用.txt /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "3rd_party/opus"] 2 | path = 3rd_party/opus 3 | url = https://git.xiph.org/opus.git 4 | [submodule "3rd_party/ogg"] 5 | path = 3rd_party/ogg 6 | url = https://git.xiph.org/ogg.git 7 | [submodule "3rd_party/vorbis"] 8 | path = 3rd_party/vorbis 9 | url = https://git.xiph.org/vorbis.git 10 | [submodule "3rd_party/tremor"] 11 | path = 3rd_party/tremor 12 | url = https://git.xiph.org/tremor.git 13 | [submodule "3rd_party/libtiff"]# Unofficial repo 14 | path = 3rd_party/libtiff 15 | url = https://github.com/vadz/libtiff.git 16 | [submodule "3rd_party/zlib"] 17 | path = 3rd_party/zlib 18 | url = https://github.com/madler/zlib.git 19 | [submodule "3rd_party/libpng"] 20 | path = 3rd_party/libpng 21 | url = git://git.code.sf.net/p/libpng/code 22 | [submodule "3rd_party/libjpeg9"]# Unofficial repo 23 | path = 3rd_party/libjpeg9 24 | url = https://github.com/yumetodo/libjpeg.git 25 | [submodule "3rd_party/bullet"] 26 | path = 3rd_party/bullet 27 | url = https://github.com/bulletphysics/bullet3.git 28 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/CMakeLists.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # DxLib (Unofficial) 2 | 3 | DX Library Copyright (C) 2001-2016 Takumi Yamada. 4 | 5 | http://dxlib.o.oo7.jp/index.html 6 | 7 | -------------------------------------------------------------------------------- /source/Borland C++ 版について.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Borland C++ 版について.txt -------------------------------------------------------------------------------- /source/DxASyncLoad.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxASyncLoad.cpp -------------------------------------------------------------------------------- /source/DxASyncLoad.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxASyncLoad.h -------------------------------------------------------------------------------- /source/DxArchive_.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxArchive_.cpp -------------------------------------------------------------------------------- /source/DxArchive_.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxArchive_.h -------------------------------------------------------------------------------- /source/DxBaseFunc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxBaseFunc.cpp -------------------------------------------------------------------------------- /source/DxBaseFunc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxBaseFunc.h -------------------------------------------------------------------------------- /source/DxBaseImage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxBaseImage.cpp -------------------------------------------------------------------------------- /source/DxBaseImage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxBaseImage.h -------------------------------------------------------------------------------- /source/DxChar.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxChar.cpp -------------------------------------------------------------------------------- /source/DxChar.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxChar.h -------------------------------------------------------------------------------- /source/DxCharCodeTable.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxCharCodeTable.cpp -------------------------------------------------------------------------------- /source/DxCompileConfig.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxCompileConfig.h -------------------------------------------------------------------------------- /source/DxDataType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxDataType.h -------------------------------------------------------------------------------- /source/DxDataTypeWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxDataTypeWin.h -------------------------------------------------------------------------------- /source/DxDrawFuncBorland.bdp: -------------------------------------------------------------------------------- 1 | [Project] 2 | Version=1.2.18 3 | Count=4 4 | Filename1=DxMemImgDrawFunction0.cpp,1,DxDrawFuncBorland.bdp,1,DxMemImgDrawFunction0.cpp 5 | Filename2=DxMemImgDrawFunction1.cpp,1,DxDrawFuncBorland.bdp,1,DxMemImgDrawFunction1.cpp 6 | Filename3=DxMemImgDrawFunction2.cpp,1,DxDrawFuncBorland.bdp,1,DxMemImgDrawFunction2.cpp 7 | Filename4=DxMemImgDrawFunction3.cpp,1,DxDrawFuncBorland.bdp,1,DxMemImgDrawFunction3.cpp 8 | 9 | [Compile] 10 | ResourceName= 11 | RunParam= 12 | Count=2 13 | Current=2 14 | 15 | [Compile1] 16 | DefName=Debug 17 | ExeName=DxDrawFunc.lib 18 | MakeName=DxDrawFunc.mak 19 | NoMakefile=0 20 | UseMakefileEx=0 21 | Target=-L 22 | TargetSub= 23 | InstructionSet=-3 24 | Optimize=-Od 25 | Warnning=-w- 26 | Debug=-v -y 27 | Compiler=-k -b 28 | PreHeader=-H- 29 | Call=-pc 30 | Language=-AT 31 | Option=-Tkh32767 32 | IncludePath= 33 | LibraryFile= 34 | Define=DEBUG;sqrtf=(float)sqrt;tanf=(float)tan;cosf=(float)cos;sinf=(float)sin;atanf=(float)atan;asinf=(float)asin;acosf=(float)acos;__BCC 35 | ResIncludePath= 36 | OutputDir=Debug 37 | MakeBefore= 38 | MakeAfter= 39 | 40 | [Compile2] 41 | DefName=Release 42 | ExeName=DxDrawFunc.lib 43 | MakeName=DxLibBorland.mak 44 | NoMakefile=0 45 | UseMakefileEx=0 46 | Target=-L 47 | TargetSub= 48 | InstructionSet=-5 49 | Optimize=-O2 50 | Warnning=-w- 51 | Debug= 52 | Compiler=-k -b 53 | PreHeader=-H- 54 | Call=-pc 55 | Language=-AT 56 | Option=-Tkh32767 57 | IncludePath= 58 | LibraryFile= 59 | Define=sqrtf=(float)sqrt;cosf=(float)cos;sinf=(float)sin;tanf=(float)tan;asinf=(float)asin;acosf=(float)acos;atanf=(float)atan;__BCC 60 | ResIncludePath= 61 | OutputDir=Release 62 | MakeBefore= 63 | MakeAfter= 64 | 65 | [OpenFiles] 66 | FileCount=0 67 | ActivePageIndex=-1 68 | 69 | -------------------------------------------------------------------------------- /source/DxDrawFuncMake.sln: -------------------------------------------------------------------------------- 1 | Microsoft Visual Studio Solution File, Format Version 9.00 2 | # Visual Studio 2005 3 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DxDrawFunc", "DxDrawFuncMake.vcproj", "{E2A60781-CF20-400E-BB35-9B9557B66549}" 4 | EndProject 5 | Global 6 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 7 | Debug|Win32 = Debug|Win32 8 | Release|Win32 = Release|Win32 9 | EndGlobalSection 10 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 11 | {E2A60781-CF20-400E-BB35-9B9557B66549}.Debug|Win32.ActiveCfg = Debug|Win32 12 | {E2A60781-CF20-400E-BB35-9B9557B66549}.Debug|Win32.Build.0 = Debug|Win32 13 | {E2A60781-CF20-400E-BB35-9B9557B66549}.Release|Win32.ActiveCfg = Release|Win32 14 | {E2A60781-CF20-400E-BB35-9B9557B66549}.Release|Win32.Build.0 = Release|Win32 15 | EndGlobalSection 16 | GlobalSection(SolutionProperties) = preSolution 17 | HideSolutionNode = FALSE 18 | EndGlobalSection 19 | EndGlobal 20 | -------------------------------------------------------------------------------- /source/DxDrawFuncMake.vcproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxDrawFuncMake.vcproj -------------------------------------------------------------------------------- /source/DxFile.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxFile.cpp -------------------------------------------------------------------------------- /source/DxFile.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxFile.h -------------------------------------------------------------------------------- /source/DxFont.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxFont.cpp -------------------------------------------------------------------------------- /source/DxFont.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxFont.h -------------------------------------------------------------------------------- /source/DxFunctionWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxFunctionWin.h -------------------------------------------------------------------------------- /source/DxGateway.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxGateway.cpp -------------------------------------------------------------------------------- /source/DxGraphics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxGraphics.cpp -------------------------------------------------------------------------------- /source/DxGraphics.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxGraphics.h -------------------------------------------------------------------------------- /source/DxGraphicsFilter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxGraphicsFilter.cpp -------------------------------------------------------------------------------- /source/DxGraphicsFilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxGraphicsFilter.h -------------------------------------------------------------------------------- /source/DxHandle.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxHandle.cpp -------------------------------------------------------------------------------- /source/DxHandle.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxHandle.h -------------------------------------------------------------------------------- /source/DxHeap.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxHeap.cpp -------------------------------------------------------------------------------- /source/DxHeap.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxHeap.h -------------------------------------------------------------------------------- /source/DxInput.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxInput.cpp -------------------------------------------------------------------------------- /source/DxInput.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxInput.h -------------------------------------------------------------------------------- /source/DxInputString.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxInputString.cpp -------------------------------------------------------------------------------- /source/DxInputString.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxInputString.h -------------------------------------------------------------------------------- /source/DxLib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxLib.h -------------------------------------------------------------------------------- /source/DxLib.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxLib.txt -------------------------------------------------------------------------------- /source/DxLibBorland.bdp: -------------------------------------------------------------------------------- 1 | [Project] 2 | Version=1.2.18 3 | Count=151 4 | Filename1=DxLib,1,DxLibBorland.bdp,0 5 | Filename2=Windows,2,DxLib,0 6 | Filename3=DxInputWin.h,3,Windows,1,Windows\DxInputWin.h 7 | Filename4=DxKeyHookBinary.cpp,3,Windows,1,Windows\DxKeyHookBinary.cpp 8 | Filename5=DxLogWin.cpp,3,Windows,1,Windows\DxLogWin.cpp 9 | Filename6=DxLogWin.h,3,Windows,1,Windows\DxLogWin.h 10 | Filename7=DxMaskD3D9.cpp,3,Windows,1,Windows\DxMaskD3D9.cpp 11 | Filename8=DxMaskD3D9.h,3,Windows,1,Windows\DxMaskD3D9.h 12 | Filename9=DxMaskD3D11.cpp,3,Windows,1,Windows\DxMaskD3D11.cpp 13 | Filename10=DxMaskD3D11.h,3,Windows,1,Windows\DxMaskD3D11.h 14 | Filename11=DxMaskWin.cpp,3,Windows,1,Windows\DxMaskWin.cpp 15 | Filename12=DxMaskWin.h,3,Windows,1,Windows\DxMaskWin.h 16 | Filename13=DxMemoryWin.cpp,3,Windows,1,Windows\DxMemoryWin.cpp 17 | Filename14=DxMemoryWin.h,3,Windows,1,Windows\DxMemoryWin.h 18 | Filename15=DxModelD3D9.cpp,3,Windows,1,Windows\DxModelD3D9.cpp 19 | Filename16=DxModelD3D9.h,3,Windows,1,Windows\DxModelD3D9.h 20 | Filename17=DxModelD3D11.cpp,3,Windows,1,Windows\DxModelD3D11.cpp 21 | Filename18=DxModelD3D11.h,3,Windows,1,Windows\DxModelD3D11.h 22 | Filename19=DxModelWin.cpp,3,Windows,1,Windows\DxModelWin.cpp 23 | Filename20=DxModelWin.h,3,Windows,1,Windows\DxModelWin.h 24 | Filename21=DxMovieWin.cpp,3,Windows,1,Windows\DxMovieWin.cpp 25 | Filename22=DxMovieWin.h,3,Windows,1,Windows\DxMovieWin.h 26 | Filename23=DxNetworkWin.cpp,3,Windows,1,Windows\DxNetworkWin.cpp 27 | Filename24=DxNetworkWin.h,3,Windows,1,Windows\DxNetworkWin.h 28 | Filename25=DxShader_Common_D3D11.h,3,Windows,1,Windows\DxShader_Common_D3D11.h 29 | Filename26=DxShader_DataType_D3D11.h,3,Windows,1,Windows\DxShader_DataType_D3D11.h 30 | Filename27=DxShader_PS_D3D9.h,3,Windows,1,Windows\DxShader_PS_D3D9.h 31 | Filename28=DxShader_PS_D3D11.h,3,Windows,1,Windows\DxShader_PS_D3D11.h 32 | Filename29=DxShader_VS_D3D9.h,3,Windows,1,Windows\DxShader_VS_D3D9.h 33 | Filename30=DxShader_VS_D3D11.h,3,Windows,1,Windows\DxShader_VS_D3D11.h 34 | Filename31=DxShaderCodeBin_Base_D3D9.cpp,3,Windows,1,Windows\DxShaderCodeBin_Base_D3D9.cpp 35 | Filename32=DxShaderCodeBin_Base_D3D11.cpp,3,Windows,1,Windows\DxShaderCodeBin_Base_D3D11.cpp 36 | Filename33=DxShaderCodeBin_Base3D_D3D11.cpp,3,Windows,1,Windows\DxShaderCodeBin_Base3D_D3D11.cpp 37 | Filename34=DxShaderCodeBin_Filter_D3D9.cpp,3,Windows,1,Windows\DxShaderCodeBin_Filter_D3D9.cpp 38 | Filename35=DxShaderCodeBin_Filter_D3D11.cpp,3,Windows,1,Windows\DxShaderCodeBin_Filter_D3D11.cpp 39 | Filename36=DxShaderCodeBin_Model_D3D9.cpp,3,Windows,1,Windows\DxShaderCodeBin_Model_D3D9.cpp 40 | Filename37=DxShaderCodeBin_Model_D3D11.cpp,3,Windows,1,Windows\DxShaderCodeBin_Model_D3D11.cpp 41 | Filename38=DxShaderCodeBin_RgbaMix_D3D9.cpp,3,Windows,1,Windows\DxShaderCodeBin_RgbaMix_D3D9.cpp 42 | Filename39=DxShaderCodeBin_RgbaMix_D3D11.cpp,3,Windows,1,Windows\DxShaderCodeBin_RgbaMix_D3D11.cpp 43 | Filename40=DxSoundConvertWin.cpp,3,Windows,1,Windows\DxSoundConvertWin.cpp 44 | Filename41=DxSoundConvertWin.h,3,Windows,1,Windows\DxSoundConvertWin.h 45 | Filename42=DxSoundWin.cpp,3,Windows,1,Windows\DxSoundWin.cpp 46 | Filename43=DxSoundWin.h,3,Windows,1,Windows\DxSoundWin.h 47 | Filename44=DxSystemWin.cpp,3,Windows,1,Windows\DxSystemWin.cpp 48 | Filename45=DxSystemWin.h,3,Windows,1,Windows\DxSystemWin.h 49 | Filename46=DxThreadWin.cpp,3,Windows,1,Windows\DxThreadWin.cpp 50 | Filename47=DxThreadWin.h,3,Windows,1,Windows\DxThreadWin.h 51 | Filename48=DxWinAPI.cpp,3,Windows,1,Windows\DxWinAPI.cpp 52 | Filename49=DxWinAPI.h,3,Windows,1,Windows\DxWinAPI.h 53 | Filename50=DxWindow.cpp,3,Windows,1,Windows\DxWindow.cpp 54 | Filename51=DxWindow.h,3,Windows,1,Windows\DxWindow.h 55 | Filename52=DxBaseFuncWin.cpp,3,Windows,1,Windows\DxBaseFuncWin.cpp 56 | Filename53=DxBaseFuncWin.h,3,Windows,1,Windows\DxBaseFuncWin.h 57 | Filename54=DxDirectX.h,3,Windows,1,Windows\DxDirectX.h 58 | Filename55=DxFileWin.cpp,3,Windows,1,Windows\DxFileWin.cpp 59 | Filename56=DxFileWin.h,3,Windows,1,Windows\DxFileWin.h 60 | Filename57=DxFontWin.cpp,3,Windows,1,Windows\DxFontWin.cpp 61 | Filename58=DxFontWin.h,3,Windows,1,Windows\DxFontWin.h 62 | Filename59=DxGraphicsAPIWin.cpp,3,Windows,1,Windows\DxGraphicsAPIWin.cpp 63 | Filename60=DxGraphicsAPIWin.h,3,Windows,1,Windows\DxGraphicsAPIWin.h 64 | Filename61=DxGraphicsD3D9.cpp,3,Windows,1,Windows\DxGraphicsD3D9.cpp 65 | Filename62=DxGraphicsD3D9.h,3,Windows,1,Windows\DxGraphicsD3D9.h 66 | Filename63=DxGraphicsD3D11.cpp,3,Windows,1,Windows\DxGraphicsD3D11.cpp 67 | Filename64=DxGraphicsD3D11.h,3,Windows,1,Windows\DxGraphicsD3D11.h 68 | Filename65=DxGraphicsFilterD3D9.cpp,3,Windows,1,Windows\DxGraphicsFilterD3D9.cpp 69 | Filename66=DxGraphicsFilterD3D9.h,3,Windows,1,Windows\DxGraphicsFilterD3D9.h 70 | Filename67=DxGraphicsFilterD3D11.cpp,3,Windows,1,Windows\DxGraphicsFilterD3D11.cpp 71 | Filename68=DxGraphicsFilterD3D11.h,3,Windows,1,Windows\DxGraphicsFilterD3D11.h 72 | Filename69=DxGraphicsFilterWin.cpp,3,Windows,1,Windows\DxGraphicsFilterWin.cpp 73 | Filename70=DxGraphicsFilterWin.h,3,Windows,1,Windows\DxGraphicsFilterWin.h 74 | Filename71=DxGraphicsWin.cpp,3,Windows,1,Windows\DxGraphicsWin.cpp 75 | Filename72=DxGraphicsWin.h,3,Windows,1,Windows\DxGraphicsWin.h 76 | Filename73=DxGuid.cpp,3,Windows,1,Windows\DxGuid.cpp 77 | Filename74=DxGuid.h,3,Windows,1,Windows\DxGuid.h 78 | Filename75=DxInputWin.cpp,3,Windows,1,Windows\DxInputWin.cpp 79 | Filename76=DxBaseImageWin.cpp,3,Windows,1,Windows\DxBaseImageWin.cpp 80 | Filename77=DxBaseImageWin.h,3,Windows,1,Windows\DxBaseImageWin.h 81 | Filename78=DxMemImg.cpp,2,DxLib,1,DxMemImg.cpp 82 | Filename79=DxMemory.cpp,2,DxLib,1,DxMemory.cpp 83 | Filename80=DxModel.cpp,2,DxLib,1,DxModel.cpp 84 | Filename81=DxModelLoader0.cpp,2,DxLib,1,DxModelLoader0.cpp 85 | Filename82=DxModelLoader1.cpp,2,DxLib,1,DxModelLoader1.cpp 86 | Filename83=DxModelLoader2.cpp,2,DxLib,1,DxModelLoader2.cpp 87 | Filename84=DxModelLoader3.cpp,2,DxLib,1,DxModelLoader3.cpp 88 | Filename85=DxModelLoader4.cpp,2,DxLib,1,DxModelLoader4.cpp 89 | Filename86=DxModelLoaderVMD.cpp,2,DxLib,1,DxModelLoaderVMD.cpp 90 | Filename87=DxModelRead.cpp,2,DxLib,1,DxModelRead.cpp 91 | Filename88=DxMovie.cpp,2,DxLib,1,DxMovie.cpp 92 | Filename89=DxNetwork.cpp,2,DxLib,1,DxNetwork.cpp 93 | Filename90=DxRingBuffer.cpp,2,DxLib,1,DxRingBuffer.cpp 94 | Filename91=DxSoftImage.cpp,2,DxLib,1,DxSoftImage.cpp 95 | Filename92=DxSound.cpp,2,DxLib,1,DxSound.cpp 96 | Filename93=DxSoundConvert.cpp,2,DxLib,1,DxSoundConvert.cpp 97 | Filename94=DxSystem.cpp,2,DxLib,1,DxSystem.cpp 98 | Filename95=DxThread.cpp,2,DxLib,1,DxThread.cpp 99 | Filename96=DxArchive_.h,2,DxLib,1,DxArchive_.h 100 | Filename97=DxASyncLoad.h,2,DxLib,1,DxASyncLoad.h 101 | Filename98=DxBaseFunc.h,2,DxLib,1,DxBaseFunc.h 102 | Filename99=DxBaseImage.h,2,DxLib,1,DxBaseImage.h 103 | Filename100=DxChar.h,2,DxLib,1,DxChar.h 104 | Filename101=DxCompileConfig.h,2,DxLib,1,DxCompileConfig.h 105 | Filename102=DxDataType.h,2,DxLib,1,DxDataType.h 106 | Filename103=DxDataTypeWin.h,2,DxLib,1,DxDataTypeWin.h 107 | Filename104=DxFile.h,2,DxLib,1,DxFile.h 108 | Filename105=DxFont.h,2,DxLib,1,DxFont.h 109 | Filename106=DxFunctionWin.h,2,DxLib,1,DxFunctionWin.h 110 | Filename107=DxGraphics.h,2,DxLib,1,DxGraphics.h 111 | Filename108=DxGraphicsFilter.h,2,DxLib,1,DxGraphicsFilter.h 112 | Filename109=DxHandle.h,2,DxLib,1,DxHandle.h 113 | Filename110=DxHeap.h,2,DxLib,1,DxHeap.h 114 | Filename111=DxInput.h,2,DxLib,1,DxInput.h 115 | Filename112=DxInputString.h,2,DxLib,1,DxInputString.h 116 | Filename113=DxLib.h,2,DxLib,1,DxLib.h 117 | Filename114=DxLog.h,2,DxLib,1,DxLog.h 118 | Filename115=DxMask.h,2,DxLib,1,DxMask.h 119 | Filename116=DxMath.h,2,DxLib,1,DxMath.h 120 | Filename117=DxMemImg.h,2,DxLib,1,DxMemImg.h 121 | Filename118=DxMemory.h,2,DxLib,1,DxMemory.h 122 | Filename119=DxModel.h,2,DxLib,1,DxModel.h 123 | Filename120=DxModelFile.h,2,DxLib,1,DxModelFile.h 124 | Filename121=DxModelLoader3.h,2,DxLib,1,DxModelLoader3.h 125 | Filename122=DxModelLoader4.h,2,DxLib,1,DxModelLoader4.h 126 | Filename123=DxModelLoaderVMD.h,2,DxLib,1,DxModelLoaderVMD.h 127 | Filename124=DxModelRead.h,2,DxLib,1,DxModelRead.h 128 | Filename125=DxMovie.h,2,DxLib,1,DxMovie.h 129 | Filename126=DxNetwork.h,2,DxLib,1,DxNetwork.h 130 | Filename127=DxRingBuffer.h,2,DxLib,1,DxRingBuffer.h 131 | Filename128=DxSoftImage.h,2,DxLib,1,DxSoftImage.h 132 | Filename129=DxSound.h,2,DxLib,1,DxSound.h 133 | Filename130=DxSoundConvert.h,2,DxLib,1,DxSoundConvert.h 134 | Filename131=DxStatic.h,2,DxLib,1,DxStatic.h 135 | Filename132=DxSystem.h,2,DxLib,1,DxSystem.h 136 | Filename133=DxThread.h,2,DxLib,1,DxThread.h 137 | Filename134=DxArchive_.cpp,2,DxLib,1,DxArchive_.cpp 138 | Filename135=DxASyncLoad.cpp,2,DxLib,1,DxASyncLoad.cpp 139 | Filename136=DxBaseFunc.cpp,2,DxLib,1,DxBaseFunc.cpp 140 | Filename137=DxBaseImage.cpp,2,DxLib,1,DxBaseImage.cpp 141 | Filename138=DxChar.cpp,2,DxLib,1,DxChar.cpp 142 | Filename139=DxCharCodeTable.cpp,2,DxLib,1,DxCharCodeTable.cpp 143 | Filename140=DxFile.cpp,2,DxLib,1,DxFile.cpp 144 | Filename141=DxFont.cpp,2,DxLib,1,DxFont.cpp 145 | Filename142=DxGateway.cpp,2,DxLib,1,DxGateway.cpp 146 | Filename143=DxGraphics.cpp,2,DxLib,1,DxGraphics.cpp 147 | Filename144=DxGraphicsFilter.cpp,2,DxLib,1,DxGraphicsFilter.cpp 148 | Filename145=DxHandle.cpp,2,DxLib,1,DxHandle.cpp 149 | Filename146=DxHeap.cpp,2,DxLib,1,DxHeap.cpp 150 | Filename147=DxInput.cpp,2,DxLib,1,DxInput.cpp 151 | Filename148=DxInputString.cpp,2,DxLib,1,DxInputString.cpp 152 | Filename149=DxLog.cpp,2,DxLib,1,DxLog.cpp 153 | Filename150=DxMask.cpp,2,DxLib,1,DxMask.cpp 154 | Filename151=DxMath.cpp,2,DxLib,1,DxMath.cpp 155 | 156 | [Compile] 157 | ResourceName= 158 | RunParam= 159 | Count=2 160 | Current=2 161 | 162 | [Compile1] 163 | DefName=Debug 164 | ExeName=DxLib.lib 165 | MakeName=DxLibBorland.mak 166 | NoMakefile=0 167 | UseMakefileEx=0 168 | Target=-L 169 | TargetSub= 170 | InstructionSet=-3 171 | Optimize=-Od 172 | Warnning=-w- 173 | Debug=-v -y 174 | Compiler=-k -b 175 | PreHeader=-H- 176 | Call=-pc 177 | Language=-AT 178 | Option=-Tkh32767 179 | IncludePath= 180 | LibraryFile= 181 | Define=DEBUG;sqrtf=(float)sqrt;tanf=(float)tan;cosf=(float)cos;sinf=(float)sin;atanf=(float)atan;asinf=(float)asin;acosf=(float)acos;__BCC 182 | ResIncludePath= 183 | OutputDir=Debug 184 | MakeBefore= 185 | MakeAfter= 186 | 187 | [Compile2] 188 | DefName=Release 189 | ExeName=DxLib.lib 190 | MakeName=DxLibBorland.mak 191 | NoMakefile=0 192 | UseMakefileEx=0 193 | Target=-L 194 | TargetSub= 195 | InstructionSet=-5 196 | Optimize=-O2 197 | Warnning=-w- 198 | Debug= 199 | Compiler=-k -b 200 | PreHeader=-H- 201 | Call=-pc 202 | Language=-AT 203 | Option=-Tkh32767 204 | IncludePath= 205 | LibraryFile= 206 | Define=sqrtf=(float)sqrt;cosf=(float)cos;sinf=(float)sin;tanf=(float)tan;asinf=(float)asin;acosf=(float)acos;atanf=(float)atan;__BCC 207 | ResIncludePath= 208 | OutputDir=Release 209 | MakeBefore= 210 | MakeAfter= 211 | 212 | [OpenFiles] 213 | FileCount=0 214 | ActivePageIndex=-1 215 | 216 | -------------------------------------------------------------------------------- /source/DxLibMake.sln: -------------------------------------------------------------------------------- 1 | Microsoft Visual Studio Solution File, Format Version 11.00 2 | # Visual Studio 2010 3 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DxLibMake", "DxLibMake.vcxproj", "{E4222A5C-B8C6-4B8D-9840-4633AD2D941F}" 4 | EndProject 5 | Global 6 | GlobalSection(SolutionConfigurationPlatforms) = preSolution 7 | Debug|Win32 = Debug|Win32 8 | Release|Win32 = Release|Win32 9 | EndGlobalSection 10 | GlobalSection(ProjectConfigurationPlatforms) = postSolution 11 | {E4222A5C-B8C6-4B8D-9840-4633AD2D941F}.Debug|Win32.ActiveCfg = Debug|Win32 12 | {E4222A5C-B8C6-4B8D-9840-4633AD2D941F}.Debug|Win32.Build.0 = Debug|Win32 13 | {E4222A5C-B8C6-4B8D-9840-4633AD2D941F}.Release|Win32.ActiveCfg = Release|Win32 14 | {E4222A5C-B8C6-4B8D-9840-4633AD2D941F}.Release|Win32.Build.0 = Release|Win32 15 | EndGlobalSection 16 | GlobalSection(SolutionProperties) = preSolution 17 | HideSolutionNode = FALSE 18 | EndGlobalSection 19 | EndGlobal 20 | -------------------------------------------------------------------------------- /source/DxLibMake.vcxproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Debug 6 | Win32 7 | 8 | 9 | Release 10 | Win32 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | {E4222A5C-B8C6-4B8D-9840-4633AD2D941F} 168 | Win32Proj 169 | 170 | 171 | 172 | StaticLibrary 173 | MultiByte 174 | 175 | 176 | StaticLibrary 177 | MultiByte 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | <_ProjectFileVersion>10.0.30319.1 191 | Debug\ 192 | Debug\ 193 | Release\ 194 | Release\ 195 | DxLib_d 196 | DxLib 197 | 198 | 199 | 200 | Disabled 201 | Neither 202 | WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) 203 | true 204 | Default 205 | MultiThreadedDebug 206 | Default 207 | 208 | 209 | Level3 210 | EditAndContinue 211 | 212 | 213 | $(OutDir)DxLib_d.lib 214 | 215 | 216 | 217 | 218 | true 219 | Speed 220 | WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) 221 | Sync 222 | MultiThreaded 223 | Default 224 | false 225 | 226 | 227 | Level3 228 | 229 | 230 | 231 | 232 | $(OutDir)DxLib.lib 233 | 234 | 235 | 236 | 237 | 238 | -------------------------------------------------------------------------------- /source/DxLibMake.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {d16f5c1b-401c-41aa-869c-c29257f95a0e} 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 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | Windows 47 | 48 | 49 | Windows 50 | 51 | 52 | Windows 53 | 54 | 55 | Windows 56 | 57 | 58 | Windows 59 | 60 | 61 | Windows 62 | 63 | 64 | Windows 65 | 66 | 67 | Windows 68 | 69 | 70 | Windows 71 | 72 | 73 | Windows 74 | 75 | 76 | Windows 77 | 78 | 79 | Windows 80 | 81 | 82 | Windows 83 | 84 | 85 | Windows 86 | 87 | 88 | Windows 89 | 90 | 91 | Windows 92 | 93 | 94 | Windows 95 | 96 | 97 | Windows 98 | 99 | 100 | Windows 101 | 102 | 103 | Windows 104 | 105 | 106 | Windows 107 | 108 | 109 | Windows 110 | 111 | 112 | Windows 113 | 114 | 115 | Windows 116 | 117 | 118 | Windows 119 | 120 | 121 | Windows 122 | 123 | 124 | Windows 125 | 126 | 127 | Windows 128 | 129 | 130 | Windows 131 | 132 | 133 | Windows 134 | 135 | 136 | Windows 137 | 138 | 139 | Windows 140 | 141 | 142 | Windows 143 | 144 | 145 | Windows 146 | 147 | 148 | Windows 149 | 150 | 151 | Windows 152 | 153 | 154 | Windows 155 | 156 | 157 | Windows 158 | 159 | 160 | Windows 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | Windows 204 | 205 | 206 | Windows 207 | 208 | 209 | Windows 210 | 211 | 212 | Windows 213 | 214 | 215 | Windows 216 | 217 | 218 | Windows 219 | 220 | 221 | Windows 222 | 223 | 224 | Windows 225 | 226 | 227 | Windows 228 | 229 | 230 | Windows 231 | 232 | 233 | Windows 234 | 235 | 236 | Windows 237 | 238 | 239 | Windows 240 | 241 | 242 | Windows 243 | 244 | 245 | Windows 246 | 247 | 248 | Windows 249 | 250 | 251 | Windows 252 | 253 | 254 | Windows 255 | 256 | 257 | Windows 258 | 259 | 260 | Windows 261 | 262 | 263 | Windows 264 | 265 | 266 | Windows 267 | 268 | 269 | Windows 270 | 271 | 272 | Windows 273 | 274 | 275 | Windows 276 | 277 | 278 | Windows 279 | 280 | 281 | Windows 282 | 283 | 284 | Windows 285 | 286 | 287 | Windows 288 | 289 | 290 | Windows 291 | 292 | 293 | Windows 294 | 295 | 296 | Windows 297 | 298 | 299 | Windows 300 | 301 | 302 | Windows 303 | 304 | 305 | Windows 306 | 307 | 308 | Windows 309 | 310 | 311 | -------------------------------------------------------------------------------- /source/DxLibMake.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /source/DxLog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxLog.cpp -------------------------------------------------------------------------------- /source/DxLog.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxLog.h -------------------------------------------------------------------------------- /source/DxLog.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxLog.txt -------------------------------------------------------------------------------- /source/DxMask.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMask.cpp -------------------------------------------------------------------------------- /source/DxMask.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMask.h -------------------------------------------------------------------------------- /source/DxMath.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMath.cpp -------------------------------------------------------------------------------- /source/DxMath.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMath.h -------------------------------------------------------------------------------- /source/DxMemImg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImg.cpp -------------------------------------------------------------------------------- /source/DxMemImg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImg.h -------------------------------------------------------------------------------- /source/DxMemImgDrawFunction0.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImgDrawFunction0.cpp -------------------------------------------------------------------------------- /source/DxMemImgDrawFunction1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImgDrawFunction1.cpp -------------------------------------------------------------------------------- /source/DxMemImgDrawFunction2.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImgDrawFunction2.cpp -------------------------------------------------------------------------------- /source/DxMemImgDrawFunction3.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemImgDrawFunction3.cpp -------------------------------------------------------------------------------- /source/DxMemory.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemory.cpp -------------------------------------------------------------------------------- /source/DxMemory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMemory.h -------------------------------------------------------------------------------- /source/DxModel.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModel.cpp -------------------------------------------------------------------------------- /source/DxModel.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModel.h -------------------------------------------------------------------------------- /source/DxModelFile.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelFile.h -------------------------------------------------------------------------------- /source/DxModelLoader0.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader0.cpp -------------------------------------------------------------------------------- /source/DxModelLoader1.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader1.cpp -------------------------------------------------------------------------------- /source/DxModelLoader2.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader2.cpp -------------------------------------------------------------------------------- /source/DxModelLoader3.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader3.cpp -------------------------------------------------------------------------------- /source/DxModelLoader3.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader3.h -------------------------------------------------------------------------------- /source/DxModelLoader4.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader4.cpp -------------------------------------------------------------------------------- /source/DxModelLoader4.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoader4.h -------------------------------------------------------------------------------- /source/DxModelLoaderVMD.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoaderVMD.cpp -------------------------------------------------------------------------------- /source/DxModelLoaderVMD.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelLoaderVMD.h -------------------------------------------------------------------------------- /source/DxModelRead.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelRead.cpp -------------------------------------------------------------------------------- /source/DxModelRead.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxModelRead.h -------------------------------------------------------------------------------- /source/DxMovie.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMovie.cpp -------------------------------------------------------------------------------- /source/DxMovie.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxMovie.h -------------------------------------------------------------------------------- /source/DxNetwork.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxNetwork.cpp -------------------------------------------------------------------------------- /source/DxNetwork.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxNetwork.h -------------------------------------------------------------------------------- /source/DxRingBuffer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxRingBuffer.cpp -------------------------------------------------------------------------------- /source/DxRingBuffer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxRingBuffer.h -------------------------------------------------------------------------------- /source/DxSoftImage.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSoftImage.cpp -------------------------------------------------------------------------------- /source/DxSoftImage.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSoftImage.h -------------------------------------------------------------------------------- /source/DxSound.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSound.cpp -------------------------------------------------------------------------------- /source/DxSound.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSound.h -------------------------------------------------------------------------------- /source/DxSoundConvert.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSoundConvert.cpp -------------------------------------------------------------------------------- /source/DxSoundConvert.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSoundConvert.h -------------------------------------------------------------------------------- /source/DxStatic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxStatic.h -------------------------------------------------------------------------------- /source/DxSystem.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSystem.cpp -------------------------------------------------------------------------------- /source/DxSystem.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxSystem.h -------------------------------------------------------------------------------- /source/DxThread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxThread.cpp -------------------------------------------------------------------------------- /source/DxThread.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxThread.h -------------------------------------------------------------------------------- /source/DxUseCLib スタティックリンクライブラリについて.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLib スタティックリンクライブラリについて.txt -------------------------------------------------------------------------------- /source/DxUseCLib.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLib.cpp -------------------------------------------------------------------------------- /source/DxUseCLib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLib.h -------------------------------------------------------------------------------- /source/DxUseCLibOgg.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLibOgg.cpp -------------------------------------------------------------------------------- /source/DxUseCLibOgg.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLibOgg.h -------------------------------------------------------------------------------- /source/DxUseCLibPhysics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DxUseCLibPhysics.cpp -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_2D_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_2D_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_3D_PixelLighting_PS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_3D_PixelLighting_PS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_3D_PixelLighting_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_3D_PixelLighting_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_3D_Simple_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_3D_Simple_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_3D_VertexLighting_PS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_3D_VertexLighting_PS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_3D_VertexLighting_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_3D_VertexLighting_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Base/Base_PS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/Base/Base_PS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/DataType.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/DataType.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/BasicBlendFilter_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 g_BlendRatio ; 6 | }; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | SamplerState g_BlendSampler : register( s1 ) ; 12 | Texture2D g_BlendTexture : register( t1 ) ; 13 | 14 | float4 Normal_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 15 | { 16 | float4 Color; 17 | float4 BlendColor; 18 | 19 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 20 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 21 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 22 | 23 | return Color; 24 | } 25 | 26 | float4 Normal_AlphaCh_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 27 | { 28 | float4 Color; 29 | float4 BlendColor; 30 | float Ta; 31 | float RSa; 32 | 33 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 34 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 35 | BlendColor.a *= g_BlendRatio.r; 36 | 37 | RSa = ( 1.0f - BlendColor.a ); 38 | Ta = RSa * Color.a + BlendColor.a; 39 | Color = ( RSa * Color.a * Color + BlendColor.a * BlendColor ) / Ta; 40 | Color.a = Ta; 41 | 42 | return Color; 43 | } 44 | 45 | float4 Add_AlphaCh_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 46 | { 47 | float4 Color; 48 | float4 BlendColor; 49 | float Ta; 50 | float RSa; 51 | 52 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 53 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 54 | BlendColor.a *= g_BlendRatio.r; 55 | 56 | RSa = ( 1.0f - BlendColor.a ); 57 | Ta = Color.a * RSa + BlendColor.a; 58 | Color = ( Color.a * Color + BlendColor.a * BlendColor ) / Ta; 59 | Color.a = Ta; 60 | Color = saturate( Color ); 61 | 62 | return Color; 63 | } 64 | 65 | float4 Multiple_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 66 | { 67 | float4 Color; 68 | float4 BlendColor; 69 | 70 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 71 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 72 | 73 | Color.rgb = lerp( Color.rgb, Color.rgb * BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 74 | 75 | return Color; 76 | } 77 | 78 | float4 Difference_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 79 | { 80 | float4 Color; 81 | float4 BlendColor; 82 | 83 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 84 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 85 | 86 | Color.rgb = lerp( Color.rgb, saturate( Color.rgb - BlendColor.rgb ), g_BlendRatio.r * BlendColor.a ); 87 | 88 | return Color; 89 | } 90 | 91 | float4 Add_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 92 | { 93 | float4 Color; 94 | float4 BlendColor; 95 | 96 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 97 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 98 | 99 | Color.rgb = lerp( Color.rgb, saturate( Color.rgb + BlendColor.rgb ), g_BlendRatio.r * BlendColor.a ); 100 | 101 | return Color; 102 | } 103 | 104 | float4 Screen_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 105 | { 106 | float4 Color; 107 | float4 BlendColor; 108 | float3 One; 109 | 110 | One = 1.0f; 111 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 112 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 113 | 114 | Color.rgb = lerp( Color.rgb, One - (( One - Color.rgb ) * ( One - BlendColor.rgb )), g_BlendRatio.r * BlendColor.a ); 115 | 116 | return Color; 117 | } 118 | 119 | float4 Overlay_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 120 | { 121 | float4 Color; 122 | float4 BlendColor; 123 | 124 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 125 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 126 | 127 | if( Color.r < 0.5 ) 128 | { 129 | BlendColor.r = Color.r * BlendColor.r * 2.0; 130 | } 131 | else 132 | { 133 | BlendColor.r = 2.0 * ( Color.r + BlendColor.r - Color.r * BlendColor.r ) - 1.0; 134 | } 135 | 136 | if( Color.g < 0.5 ) 137 | { 138 | BlendColor.g = Color.g * BlendColor.g * 2.0; 139 | } 140 | else 141 | { 142 | BlendColor.g = 2.0 * ( Color.g + BlendColor.g - Color.g * BlendColor.g ) - 1.0; 143 | } 144 | 145 | if( Color.b < 0.5 ) 146 | { 147 | BlendColor.b = Color.b * BlendColor.b * 2.0; 148 | } 149 | else 150 | { 151 | BlendColor.b = 2.0 * ( Color.b + BlendColor.b - Color.b * BlendColor.b ) - 1.0; 152 | } 153 | BlendColor = saturate( BlendColor ); 154 | 155 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 156 | 157 | return Color; 158 | } 159 | 160 | float4 Dodge_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 161 | { 162 | float4 Color; 163 | float4 BlendColor; 164 | 165 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 166 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 167 | 168 | if( BlendColor.r <= 0.999 ) 169 | { 170 | BlendColor.r = Color.r / ( 1.0 - BlendColor.r ); 171 | } 172 | else 173 | { 174 | BlendColor.r = 1.0; 175 | } 176 | 177 | if( BlendColor.g <= 0.999 ) 178 | { 179 | BlendColor.g = Color.g / ( 1.0 - BlendColor.g ); 180 | } 181 | else 182 | { 183 | BlendColor.g = 1.0; 184 | } 185 | 186 | if( BlendColor.b <= 0.999 ) 187 | { 188 | BlendColor.b = Color.b / ( 1.0 - BlendColor.b ); 189 | } 190 | else 191 | { 192 | BlendColor.b = 1.0; 193 | } 194 | 195 | BlendColor = saturate( BlendColor ); 196 | 197 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 198 | 199 | return Color; 200 | } 201 | 202 | float4 Burn_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 203 | { 204 | float4 Color; 205 | float4 BlendColor; 206 | 207 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 208 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 209 | 210 | if( BlendColor.r > 0.0001 ) 211 | { 212 | BlendColor.r = 1.0 - ( 1.0 - Color.r ) / BlendColor.r ; 213 | } 214 | 215 | if( BlendColor.g > 0.0001 ) 216 | { 217 | BlendColor.g = 1.0 - ( 1.0 - Color.g ) / BlendColor.g ; 218 | } 219 | 220 | if( BlendColor.b > 0.0001 ) 221 | { 222 | BlendColor.b = 1.0 - ( 1.0 - Color.b ) / BlendColor.b ; 223 | } 224 | 225 | BlendColor = saturate( BlendColor ); 226 | 227 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 228 | 229 | return Color; 230 | } 231 | 232 | float4 Darken_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 233 | { 234 | float4 Color; 235 | float4 BlendColor; 236 | 237 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 238 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 239 | 240 | if( Color.r < BlendColor.r ) 241 | { 242 | BlendColor.r = Color.r ; 243 | } 244 | 245 | if( Color.g < BlendColor.g ) 246 | { 247 | BlendColor.g = Color.g ; 248 | } 249 | 250 | if( Color.b < BlendColor.b ) 251 | { 252 | BlendColor.b = Color.b ; 253 | } 254 | 255 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 256 | 257 | return Color; 258 | } 259 | 260 | float4 Lighten_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 261 | { 262 | float4 Color; 263 | float4 BlendColor; 264 | 265 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 266 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 267 | 268 | if( Color.r > BlendColor.r ) 269 | { 270 | BlendColor.r = Color.r ; 271 | } 272 | 273 | if( Color.g > BlendColor.g ) 274 | { 275 | BlendColor.g = Color.g ; 276 | } 277 | 278 | if( Color.b > BlendColor.b ) 279 | { 280 | BlendColor.b = Color.b ; 281 | } 282 | 283 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 284 | 285 | return Color; 286 | } 287 | 288 | float4 SoftLight_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 289 | { 290 | float4 Color; 291 | float4 BlendColor; 292 | 293 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 294 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 295 | 296 | if( BlendColor.r < 0.5 ) 297 | { 298 | BlendColor.r = pow( Color.r, ( 1.0f - BlendColor.r ) * 2.0 ) ; 299 | } 300 | else 301 | { 302 | BlendColor.r = pow( Color.r, 0.5 / BlendColor.r ); 303 | } 304 | 305 | if( BlendColor.g < 0.5 ) 306 | { 307 | BlendColor.g = pow( Color.g, ( 1.0f - BlendColor.g ) * 2.0 ) ; 308 | } 309 | else 310 | { 311 | BlendColor.g = pow( Color.g, 0.5 / BlendColor.g ); 312 | } 313 | 314 | if( BlendColor.b < 0.5 ) 315 | { 316 | BlendColor.b = pow( Color.b, ( 1.0f - BlendColor.b ) * 2.0 ) ; 317 | } 318 | else 319 | { 320 | BlendColor.b = pow( Color.b, 0.5 / BlendColor.b ); 321 | } 322 | 323 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 324 | 325 | return Color; 326 | } 327 | 328 | float4 HardLight_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 329 | { 330 | float4 Color; 331 | float4 BlendColor; 332 | 333 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 334 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 335 | 336 | if( BlendColor.r < 0.5 ) 337 | { 338 | BlendColor.r = Color.r * BlendColor.r * 2.0; 339 | } 340 | else 341 | { 342 | BlendColor.r = 2.0 * ( Color.r + BlendColor.r - Color.r * BlendColor.r ) - 1.0; 343 | } 344 | 345 | if( BlendColor.g < 0.5 ) 346 | { 347 | BlendColor.g = Color.g * BlendColor.g * 2.0; 348 | } 349 | else 350 | { 351 | BlendColor.g = 2.0 * ( Color.g + BlendColor.g - Color.g * BlendColor.g ) - 1.0; 352 | } 353 | 354 | if( BlendColor.b < 0.5 ) 355 | { 356 | BlendColor.b = Color.b * BlendColor.b * 2.0; 357 | } 358 | else 359 | { 360 | BlendColor.b = 2.0 * ( Color.b + BlendColor.b - Color.b * BlendColor.b ) - 1.0; 361 | } 362 | 363 | BlendColor = saturate( BlendColor ); 364 | 365 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 366 | 367 | return Color; 368 | } 369 | 370 | float4 Exclusion_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 371 | { 372 | float4 Color; 373 | float4 BlendColor; 374 | 375 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 376 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 377 | 378 | Color.rgb = lerp( Color.rgb, Color.rgb + BlendColor.rgb - 2.0 * Color.rgb * BlendColor.rgb, g_BlendRatio.r * BlendColor.a ); 379 | 380 | return Color; 381 | } 382 | 383 | float4 Multiple_AOnly_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 384 | { 385 | float4 Color; 386 | float4 BlendColor; 387 | 388 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 389 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 390 | 391 | Color.a = lerp( Color.a, BlendColor.a * Color.a, g_BlendRatio.r ); 392 | 393 | return Color; 394 | } 395 | 396 | float4 PMA_Multiple_AOnly_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 397 | { 398 | float4 PremulColor; 399 | float4 LinearColor; 400 | float4 PremulBlendColor; 401 | float4 LinearBlendColor; 402 | float4 OutputLinearColor; 403 | float4 OutputPremulColor; 404 | 405 | PremulColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 406 | PremulBlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ); 407 | 408 | LinearColor = PremulColor / PremulColor.a; 409 | LinearColor.a = PremulColor.a; 410 | LinearBlendColor = PremulBlendColor / PremulBlendColor.a; 411 | LinearBlendColor.a = PremulBlendColor.a; 412 | 413 | OutputLinearColor = LinearColor; 414 | OutputLinearColor.a = lerp( LinearColor.a, LinearBlendColor.a * LinearColor.a, g_BlendRatio.r ); 415 | 416 | OutputPremulColor = OutputLinearColor * OutputLinearColor.a; 417 | OutputPremulColor.a = OutputLinearColor.a; 418 | 419 | return OutputPremulColor; 420 | } 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/BrightnessClip_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 g_ClipBrightness ; 6 | float4 g_RGBToY ; 7 | float4 g_ClipFillColor ; 8 | } ; 9 | 10 | SamplerState g_SrcSampler : register( s0 ) ; 11 | Texture2D g_SrcTexture : register( t0 ) ; 12 | 13 | 14 | float4 PS_Less(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 15 | { 16 | float4 Color; 17 | 18 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 19 | clip( dot( g_RGBToY, Color ) - g_ClipBrightness.r ) ; 20 | 21 | return Color; 22 | } 23 | 24 | float4 PS_Less_ClipFill(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 25 | { 26 | float4 Color; 27 | 28 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 29 | if( dot( g_RGBToY, Color ) < g_ClipBrightness.r ) 30 | { 31 | return g_ClipFillColor; 32 | } 33 | else 34 | { 35 | return Color; 36 | } 37 | } 38 | 39 | float4 PS_Greater(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 40 | { 41 | float4 Color; 42 | 43 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 44 | clip( g_ClipBrightness.r - dot( g_RGBToY, Color ) ) ; 45 | 46 | return Color; 47 | } 48 | 49 | float4 PS_Greater_ClipFill(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 50 | { 51 | float4 Color; 52 | 53 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 54 | if( dot( g_RGBToY, Color ) > g_ClipBrightness.r ) 55 | { 56 | return g_ClipFillColor; 57 | } 58 | else 59 | { 60 | return Color; 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/BrightnessScale_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 g_MinB_ScaleB ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | float4 BrightnessScale_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 12 | { 13 | float4 Color; 14 | float3 Hsb; 15 | float3 Rgb; 16 | float Max; 17 | float Min; 18 | float Delta; 19 | float3 Half; 20 | float3 One; 21 | 22 | Half = 0.5f; 23 | One = 1.0f; 24 | 25 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 26 | Rgb = Color.rgb; 27 | 28 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 29 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 30 | Delta = Max - Min; 31 | 32 | Hsb.z = ( Max + Min ) / 2.0; 33 | if( Max == Min ) 34 | { 35 | Hsb.y = 0.0f; 36 | 37 | Rgb.r = 1.0f; 38 | Rgb.g = 0.0f; 39 | Rgb.b = 0.0f; 40 | } 41 | else 42 | { 43 | float3 tRGB; 44 | float t; 45 | 46 | if( Hsb.z > 0.5 ) 47 | { 48 | Hsb.y = 2 - Max - Min; 49 | } 50 | else 51 | { 52 | Hsb.y = Max + Min; 53 | } 54 | Hsb.y = Delta / Hsb.y; 55 | 56 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 57 | if( Rgb.r == Max ) 58 | { 59 | Rgb.r = 1.0f; 60 | t = tRGB.b - tRGB.g; 61 | if( tRGB.b > tRGB.g ) 62 | { 63 | Rgb.b = 0.0f; 64 | Rgb.g = t ; 65 | } 66 | else 67 | { 68 | Rgb.b = -t ; 69 | Rgb.g = 0.0f; 70 | } 71 | } 72 | else 73 | if( Rgb.g == Max ) 74 | { 75 | Rgb.g = 1.0f; 76 | t = tRGB.r - tRGB.b; 77 | if( tRGB.r > tRGB.b ) 78 | { 79 | Rgb.r = 0.0f; 80 | Rgb.b = t ; 81 | } 82 | else 83 | { 84 | Rgb.r = -t ; 85 | Rgb.b = 0.0f; 86 | } 87 | } 88 | else 89 | { 90 | Rgb.b = 1.0f; 91 | t = tRGB.g - tRGB.r; 92 | if( tRGB.g > tRGB.r ) 93 | { 94 | Rgb.g = 0.0f; 95 | Rgb.r = t ; 96 | } 97 | else 98 | { 99 | Rgb.g = -t ; 100 | Rgb.r = 0.0f ; 101 | } 102 | } 103 | } 104 | 105 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 106 | 107 | Hsb.z = saturate( ( Hsb.z - g_MinB_ScaleB.x ) * g_MinB_ScaleB.y ) ; 108 | 109 | if( Hsb.z <= 0.5f ) 110 | { 111 | Rgb *= Hsb.z * 2.0f; 112 | } 113 | else 114 | { 115 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 116 | } 117 | 118 | Color.r = Rgb.r; 119 | Color.g = Rgb.g; 120 | Color.b = Rgb.b; 121 | 122 | return Color; 123 | } 124 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/DownScale_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 PixelOffset[8] ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | float4 Down_2_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 12 | { 13 | float4 Color; 14 | 15 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[0].xy ) ; 16 | 17 | return Color; 18 | } 19 | 20 | 21 | float4 Down_4_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 22 | { 23 | float4 Color; 24 | 25 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[0].xy ) ; 26 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[0].zw ) ; 27 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[1].xy ) ; 28 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[1].zw ) ; 29 | 30 | return Color / 4; 31 | } 32 | 33 | 34 | float4 Down_8_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 35 | { 36 | float4 Color; 37 | 38 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[0].xy ) ; 39 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[0].zw ) ; 40 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[1].xy ) ; 41 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[1].zw ) ; 42 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[2].xy ) ; 43 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[2].zw ) ; 44 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[3].xy ) ; 45 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[3].zw ) ; 46 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[4].xy ) ; 47 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[4].zw ) ; 48 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[5].xy ) ; 49 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[5].zw ) ; 50 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[6].xy ) ; 51 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[6].zw ) ; 52 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[7].xy ) ; 53 | Color += g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[7].zw ) ; 54 | 55 | return Color / 16; 56 | } 57 | 58 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/Gauss_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 PixelWeight[4] ; 6 | float4 PixelOffset[8] ; 7 | } ; 8 | 9 | SamplerState g_SrcSampler : register( s0 ) ; 10 | Texture2D g_SrcTexture : register( t0 ) ; 11 | 12 | float4 PS_8pixel(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 13 | { 14 | float4 Color; 15 | 16 | Color = PixelWeight[0].x * g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 17 | Color += PixelWeight[0].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 0 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 0 ].zw ) ); 18 | Color += PixelWeight[0].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].xy ) ); 19 | Color += PixelWeight[0].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].zw ) ); 20 | 21 | return Color; 22 | } 23 | 24 | float4 PS_16pixel(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 25 | { 26 | float4 Color; 27 | 28 | Color = PixelWeight[0].x * g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 29 | Color += PixelWeight[0].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 0 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 0 ].zw ) ); 30 | Color += PixelWeight[0].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].xy ) ); 31 | Color += PixelWeight[0].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].zw ) ); 32 | Color += PixelWeight[1].x * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 2 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 2 ].xy ) ); 33 | Color += PixelWeight[1].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 2 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 2 ].zw ) ); 34 | Color += PixelWeight[1].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 3 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 3 ].xy ) ); 35 | Color += PixelWeight[1].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 3 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 3 ].zw ) ); 36 | 37 | return Color; 38 | } 39 | 40 | float4 PS_32pixel(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 41 | { 42 | float4 Color; 43 | 44 | Color = PixelWeight[0].x * g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ); 45 | Color += PixelWeight[0].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 0 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 0 ].zw ) ); 46 | Color += PixelWeight[0].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].xy ) ); 47 | Color += PixelWeight[0].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 1 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 1 ].zw ) ); 48 | Color += PixelWeight[1].x * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 2 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 2 ].xy ) ); 49 | Color += PixelWeight[1].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 2 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 2 ].zw ) ); 50 | Color += PixelWeight[1].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 3 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 3 ].xy ) ); 51 | Color += PixelWeight[1].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 3 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 3 ].zw ) ); 52 | Color += PixelWeight[2].x * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 4 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 4 ].xy ) ); 53 | Color += PixelWeight[2].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 4 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 4 ].zw ) ); 54 | Color += PixelWeight[2].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 5 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 5 ].xy ) ); 55 | Color += PixelWeight[2].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 5 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 5 ].zw ) ); 56 | Color += PixelWeight[3].x * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 6 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 6 ].xy ) ); 57 | Color += PixelWeight[3].y * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 6 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 6 ].zw ) ); 58 | Color += PixelWeight[3].z * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 7 ].xy ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 7 ].xy ) ); 59 | Color += PixelWeight[3].w * ( g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 + PixelOffset[ 7 ].zw ) + g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 - PixelOffset[ 7 ].zw ) ); 60 | 61 | return Color; 62 | } 63 | 64 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/GradientMap_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 RGBToY ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | SamplerState g_GradientMapSampler : register( s1 ) ; 12 | Texture2D g_GradientMapTexture : register( t1 ) ; 13 | 14 | float4 GradientMap_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 15 | { 16 | float4 DestColor ; 17 | float4 SrcColor ; 18 | 19 | SrcColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 20 | DestColor = g_GradientMapTexture.Sample( g_GradientMapSampler, float2( dot( SrcColor.rgb, RGBToY.rgb ), 0 ) ) ; 21 | DestColor.a *= SrcColor.a ; 22 | 23 | return DestColor ; 24 | } 25 | 26 | float4 GradientMapRev_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 27 | { 28 | float4 DestColor ; 29 | float4 SrcColor ; 30 | 31 | SrcColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 32 | DestColor = g_GradientMapTexture.Sample( g_GradientMapSampler, float2( 1.0f - dot( SrcColor.rgb, RGBToY.rgb ), 0 ) ) ; 33 | DestColor.a *= SrcColor.a ; 34 | 35 | return DestColor ; 36 | } 37 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/Hsb_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 Param ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | SamplerState g_BlendSampler : register( s1 ) ; 12 | Texture2D g_BlendTexture : register( t1 ) ; 13 | 14 | float4 RGB_To_HSB_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 15 | { 16 | float4 Color; 17 | float3 Hsb; 18 | float3 Rgb; 19 | float Max; 20 | float Min; 21 | float Delta; 22 | float3 One; 23 | 24 | One = 1.0f; 25 | 26 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 27 | Rgb = Color.rgb; 28 | 29 | if( Param.z > 0.0 ) 30 | { 31 | Rgb += ( One - Rgb ) * Param.z; 32 | } 33 | else 34 | { 35 | Rgb *= 1.0 + Param.z; 36 | } 37 | Rgb = saturate( Rgb ); 38 | 39 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 40 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 41 | Delta = Max - Min; 42 | 43 | Hsb.z = ( Max + Min ) / 2.0; 44 | if( Max == Min ) 45 | { 46 | Hsb.x = 0.0f; 47 | Hsb.y = 0.0f; 48 | } 49 | else 50 | { 51 | float3 tRGB; 52 | 53 | if( Hsb.z > 0.5 ) 54 | { 55 | Hsb.y = 2 - Max - Min; 56 | } 57 | else 58 | { 59 | Hsb.y = Max + Min; 60 | } 61 | Hsb.y = Delta / Hsb.y; 62 | 63 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 64 | if( Rgb.r == Max ) 65 | { 66 | Hsb.x = tRGB.b - tRGB.g; 67 | } 68 | else 69 | if( Rgb.g == Max ) 70 | { 71 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 72 | } 73 | else 74 | { 75 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 76 | } 77 | if( Hsb.x < 0.0 ) 78 | { 79 | Hsb.x += 6.0; 80 | } 81 | Hsb.x /= 6.0; 82 | } 83 | 84 | Color.r = Hsb.x; 85 | Color.g = Hsb.y; 86 | Color.b = Hsb.z; 87 | 88 | return Color; 89 | } 90 | 91 | float4 HSB_HLOCK_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 92 | { 93 | float4 Color; 94 | float3 Hsb; 95 | float3 Rgb; 96 | float Max; 97 | float Min; 98 | float Delta; 99 | float3 Half; 100 | float3 One; 101 | 102 | Half = 0.5f; 103 | One = 1.0f; 104 | 105 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 106 | Rgb = Color.rgb; 107 | 108 | if( Param.z > 0.0 ) 109 | { 110 | Rgb += ( One - Rgb ) * Param.z; 111 | } 112 | else 113 | { 114 | Rgb *= 1.0 + Param.z; 115 | } 116 | Rgb = saturate( Rgb ); 117 | 118 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 119 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 120 | Delta = Max - Min; 121 | 122 | Hsb.z = ( Max + Min ) / 2.0; 123 | if( Max == Min ) 124 | { 125 | Hsb.y = 0.0f; 126 | } 127 | else 128 | { 129 | float3 tRGB; 130 | 131 | if( Hsb.z > 0.5 ) 132 | { 133 | Hsb.y = 2 - Max - Min; 134 | } 135 | else 136 | { 137 | Hsb.y = Max + Min; 138 | } 139 | Hsb.y = Delta / Hsb.y; 140 | } 141 | 142 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 143 | 144 | if( Param.x < 1.0f ) 145 | { 146 | Rgb.r = 1.0f ; 147 | Rgb.g = Param.x ; 148 | Rgb.b = 0.0f ; 149 | } 150 | else 151 | if( Param.x < 2.0f ) 152 | { 153 | Rgb.r = 1.0f - ( Param.x - 1.0f ) ; 154 | Rgb.g = 1.0f ; 155 | Rgb.b = 0.0f ; 156 | } 157 | else 158 | if( Param.x < 3.0f ) 159 | { 160 | Rgb.r = 0.0f ; 161 | Rgb.g = 1.0f ; 162 | Rgb.b = Param.x - 2.0f ; 163 | } 164 | else 165 | if( Param.x < 4.0f ) 166 | { 167 | Rgb.r = 0.0f ; 168 | Rgb.g = 1.0f - ( Param.x - 3.0f ) ; 169 | Rgb.b = 1.0f ; 170 | } 171 | else 172 | if( Param.x < 5.0f ) 173 | { 174 | Rgb.r = Param.x - 4.0f ; 175 | Rgb.g = 0.0f ; 176 | Rgb.b = 1.0f ; 177 | } 178 | else 179 | { 180 | Rgb.r = 1.0f ; 181 | Rgb.g = 0.0f ; 182 | Rgb.b = 1.0f - ( Param.x - 5.0f ) ; 183 | } 184 | 185 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 186 | 187 | if( Hsb.z <= 0.5f ) 188 | { 189 | Rgb *= Hsb.z * 2.0f; 190 | } 191 | else 192 | { 193 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 194 | } 195 | 196 | Color.r = Rgb.r; 197 | Color.g = Rgb.g; 198 | Color.b = Rgb.b; 199 | 200 | return Color; 201 | } 202 | 203 | float4 HSB_To_RGB_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 204 | { 205 | float4 Color; 206 | float3 Hsb; 207 | float3 Rgb; 208 | float Max; 209 | float Min; 210 | float Delta; 211 | float3 Half; 212 | float3 One; 213 | 214 | Half = 0.5f; 215 | One = 1.0f; 216 | 217 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 218 | Hsb = Color.rgb; 219 | 220 | Hsb.x *= 6.0f; 221 | Hsb.x += Param.x; 222 | if( Hsb.x < 0.0f ) 223 | { 224 | Hsb.x += 6.0; 225 | } 226 | else 227 | if( Hsb.x >= 6.0f ) 228 | { 229 | Hsb.x -= 6.0; 230 | } 231 | 232 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 233 | 234 | if( Hsb.x < 1.0f ) 235 | { 236 | Rgb.r = 1.0f ; 237 | Rgb.g = Hsb.x ; 238 | Rgb.b = 0.0f ; 239 | } 240 | else 241 | if( Hsb.x < 2.0f ) 242 | { 243 | Rgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 244 | Rgb.g = 1.0f ; 245 | Rgb.b = 0.0f ; 246 | } 247 | else 248 | if( Hsb.x < 3.0f ) 249 | { 250 | Rgb.r = 0.0f ; 251 | Rgb.g = 1.0f ; 252 | Rgb.b = Hsb.x - 2.0f ; 253 | } 254 | else 255 | if( Hsb.x < 4.0f ) 256 | { 257 | Rgb.r = 0.0f ; 258 | Rgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 259 | Rgb.b = 1.0f ; 260 | } 261 | else 262 | if( Hsb.x < 5.0f ) 263 | { 264 | Rgb.r = Hsb.x - 4.0f ; 265 | Rgb.g = 0.0f ; 266 | Rgb.b = 1.0f ; 267 | } 268 | else 269 | { 270 | Rgb.r = 1.0f ; 271 | Rgb.g = 0.0f ; 272 | Rgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 273 | } 274 | 275 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 276 | 277 | if( Hsb.z <= 0.5f ) 278 | { 279 | Rgb *= Hsb.z * 2.0f; 280 | } 281 | else 282 | { 283 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 284 | } 285 | 286 | Color.r = Rgb.r; 287 | Color.g = Rgb.g; 288 | Color.b = Rgb.b; 289 | 290 | return Color; 291 | } 292 | 293 | 294 | 295 | 296 | 297 | 298 | float4 HSB_Base_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 299 | { 300 | float4 Color; 301 | float3 Hsb; 302 | float3 Rgb; 303 | float Max; 304 | float Min; 305 | float Delta; 306 | float3 Half; 307 | float3 One; 308 | 309 | Half = 0.5f; 310 | One = 1.0f; 311 | 312 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 313 | Rgb = Color.rgb; 314 | 315 | if( Param.z > 0.0 ) 316 | { 317 | Rgb += ( One - Rgb ) * Param.z; 318 | } 319 | else 320 | { 321 | Rgb *= 1.0 + Param.z; 322 | } 323 | Rgb = saturate( Rgb ); 324 | 325 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 326 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 327 | Delta = Max - Min; 328 | 329 | Hsb.z = ( Max + Min ) / 2.0; 330 | if( Max == Min ) 331 | { 332 | Hsb.x = 0.0f; 333 | Hsb.y = 0.0f; 334 | } 335 | else 336 | { 337 | float3 tRGB; 338 | 339 | if( Hsb.z > 0.5 ) 340 | { 341 | Hsb.y = 2 - Max - Min; 342 | } 343 | else 344 | { 345 | Hsb.y = Max + Min; 346 | } 347 | Hsb.y = Delta / Hsb.y; 348 | 349 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 350 | if( Rgb.r == Max ) 351 | { 352 | Hsb.x = tRGB.b - tRGB.g; 353 | } 354 | else 355 | if( Rgb.g == Max ) 356 | { 357 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 358 | } 359 | else 360 | { 361 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 362 | } 363 | if( Hsb.x < 0.0 ) 364 | { 365 | Hsb.x += 6.0; 366 | } 367 | } 368 | 369 | Hsb.x += Param.x; 370 | if( Hsb.x < 0.0f ) 371 | { 372 | Hsb.x += 6.0; 373 | } 374 | else 375 | if( Hsb.x >= 6.0f ) 376 | { 377 | Hsb.x -= 6.0; 378 | } 379 | 380 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 381 | 382 | if( Hsb.x < 1.0f ) 383 | { 384 | Rgb.r = 1.0f ; 385 | Rgb.g = Hsb.x ; 386 | Rgb.b = 0.0f ; 387 | } 388 | else 389 | if( Hsb.x < 2.0f ) 390 | { 391 | Rgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 392 | Rgb.g = 1.0f ; 393 | Rgb.b = 0.0f ; 394 | } 395 | else 396 | if( Hsb.x < 3.0f ) 397 | { 398 | Rgb.r = 0.0f ; 399 | Rgb.g = 1.0f ; 400 | Rgb.b = Hsb.x - 2.0f ; 401 | } 402 | else 403 | if( Hsb.x < 4.0f ) 404 | { 405 | Rgb.r = 0.0f ; 406 | Rgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 407 | Rgb.b = 1.0f ; 408 | } 409 | else 410 | if( Hsb.x < 5.0f ) 411 | { 412 | Rgb.r = Hsb.x - 4.0f ; 413 | Rgb.g = 0.0f ; 414 | Rgb.b = 1.0f ; 415 | } 416 | else 417 | { 418 | Rgb.r = 1.0f ; 419 | Rgb.g = 0.0f ; 420 | Rgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 421 | } 422 | 423 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 424 | 425 | if( Hsb.z <= 0.5f ) 426 | { 427 | Rgb *= Hsb.z * 2.0f; 428 | } 429 | else 430 | { 431 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 432 | } 433 | 434 | Color.rgb = saturate( Rgb.rgb ); 435 | 436 | return Color; 437 | } 438 | 439 | 440 | 441 | 442 | 443 | 444 | float4 HSB_Blend_Hue_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 445 | { 446 | float4 Color; 447 | float4 BlendColor; 448 | float3 Hsb; 449 | float3 Rgb; 450 | float3 DestRgb; 451 | float2 Max; 452 | float2 Min; 453 | float2 Delta; 454 | float3 Half; 455 | float3 One; 456 | 457 | Half = 0.5f; 458 | One = 1.0f; 459 | 460 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 461 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ) ; 462 | Rgb = Color.rgb; 463 | 464 | Max.x = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 465 | Min.x = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 466 | Delta.x = Max.x - Min.x; 467 | 468 | Max.y = max( BlendColor.r, max( BlendColor.g, BlendColor.b ) ); 469 | Min.y = min( BlendColor.r, min( BlendColor.g, BlendColor.b ) ); 470 | Delta.y = Max.y - Min.y; 471 | 472 | Hsb.z = ( Max.x + Min.x ) / 2.0; 473 | if( Max.x != Min.x ) 474 | { 475 | if( Hsb.z > 0.5 ) 476 | { 477 | Hsb.y = 2 - Max.x - Min.x; 478 | } 479 | else 480 | { 481 | Hsb.y = Max.x + Min.x; 482 | } 483 | Hsb.y = Delta.x / Hsb.y; 484 | } 485 | 486 | if( Max.y != Min.y ) 487 | { 488 | float3 tRGB; 489 | 490 | tRGB = ( Max.yyy - BlendColor.rgb ) / Delta.y; 491 | if( BlendColor.r == Max.y ) 492 | { 493 | Hsb.x = tRGB.b - tRGB.g; 494 | } 495 | else 496 | if( BlendColor.g == Max.y ) 497 | { 498 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 499 | } 500 | else 501 | { 502 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 503 | } 504 | if( Hsb.x < 0.0 ) 505 | { 506 | Hsb.x += 6.0; 507 | } 508 | } 509 | 510 | if( Hsb.x < 1.0f ) 511 | { 512 | DestRgb.r = 1.0f ; 513 | DestRgb.g = Hsb.x ; 514 | } 515 | else 516 | if( Hsb.x < 2.0f ) 517 | { 518 | DestRgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 519 | DestRgb.g = 1.0f ; 520 | } 521 | else 522 | if( Hsb.x < 3.0f ) 523 | { 524 | DestRgb.g = 1.0f ; 525 | DestRgb.b = Hsb.x - 2.0f ; 526 | } 527 | else 528 | if( Hsb.x < 4.0f ) 529 | { 530 | DestRgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 531 | DestRgb.b = 1.0f ; 532 | } 533 | else 534 | if( Hsb.x < 5.0f ) 535 | { 536 | DestRgb.r = Hsb.x - 4.0f ; 537 | DestRgb.b = 1.0f ; 538 | } 539 | else 540 | { 541 | DestRgb.r = 1.0f ; 542 | DestRgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 543 | } 544 | 545 | DestRgb.rgb += ( Half.rgb - DestRgb.rgb ) * ( 1.0f - Hsb.y ); 546 | 547 | if( Hsb.z <= 0.5f ) 548 | { 549 | DestRgb.rgb *= Hsb.z * 2.0f; 550 | } 551 | else 552 | { 553 | DestRgb.rgb += ( One.rgb - DestRgb.rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 554 | } 555 | 556 | Color.rgb = lerp( Color.rgb, DestRgb.rgb, Param.x/*BlendRatio*/ * BlendColor.a ); 557 | 558 | return Color; 559 | } 560 | 561 | float4 HSB_Blend_Saturation_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 562 | { 563 | float4 Color; 564 | float4 BlendColor; 565 | float3 Hsb; 566 | float3 Rgb; 567 | float3 DestRgb; 568 | float2 Max; 569 | float2 Min; 570 | float2 Delta; 571 | float3 Half; 572 | float3 One; 573 | 574 | Half = 0.5f; 575 | One = 1.0f; 576 | 577 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 578 | BlendColor = g_BlendTexture.Sample( g_BlendSampler, In.TexCoords1 ) ; 579 | Rgb = Color.rgb; 580 | 581 | Max.x = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 582 | Min.x = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 583 | Delta.x = Max.x - Min.x; 584 | 585 | Max.y = max( BlendColor.r, max( BlendColor.g, BlendColor.b ) ); 586 | Min.y = min( BlendColor.r, min( BlendColor.g, BlendColor.b ) ); 587 | Delta.y = Max.y - Min.y; 588 | 589 | Hsb.z = Max.x + Min.x; 590 | if( Max.x != Min.x ) 591 | { 592 | float3 tRGB; 593 | 594 | tRGB = ( Max.xxx - Color.rgb ) / Delta.x; 595 | if( Color.r == Max.x ) 596 | { 597 | Hsb.x = tRGB.b - tRGB.g; 598 | } 599 | else 600 | if( Color.g == Max.x ) 601 | { 602 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 603 | } 604 | else 605 | { 606 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 607 | } 608 | if( Hsb.x < 0.0 ) 609 | { 610 | Hsb.x += 6.0; 611 | } 612 | } 613 | 614 | if( Max.y != Min.y ) 615 | { 616 | if( Max.y + Min.y > 1.0 ) 617 | { 618 | Hsb.y = 2 - ( Max.y + Min.y ); 619 | } 620 | else 621 | { 622 | Hsb.y = Max.y + Min.y; 623 | } 624 | Hsb.y = Delta.y / Hsb.y; 625 | } 626 | 627 | if( Hsb.x < 1.0f ) 628 | { 629 | DestRgb.r = 1.0f ; 630 | DestRgb.g = Hsb.x ; 631 | } 632 | else 633 | if( Hsb.x < 2.0f ) 634 | { 635 | DestRgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 636 | DestRgb.g = 1.0f ; 637 | } 638 | else 639 | if( Hsb.x < 3.0f ) 640 | { 641 | DestRgb.g = 1.0f ; 642 | DestRgb.b = Hsb.x - 2.0f ; 643 | } 644 | else 645 | if( Hsb.x < 4.0f ) 646 | { 647 | DestRgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 648 | DestRgb.b = 1.0f ; 649 | } 650 | else 651 | if( Hsb.x < 5.0f ) 652 | { 653 | DestRgb.r = Hsb.x - 4.0f ; 654 | DestRgb.b = 1.0f ; 655 | } 656 | else 657 | { 658 | DestRgb.r = 1.0f ; 659 | DestRgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 660 | } 661 | 662 | DestRgb.rgb += ( Half.rgb - DestRgb.rgb ) * ( 1.0f - Hsb.y ); 663 | 664 | if( Hsb.z < 1.0f ) 665 | { 666 | DestRgb.rgb *= Hsb.z; 667 | } 668 | else 669 | { 670 | DestRgb.rgb += ( One.rgb - DestRgb.rgb ) * ( Hsb.z - 1.0f ); 671 | } 672 | 673 | Color.rgb = lerp( Color.rgb, DestRgb.rgb, Param.x/*BlendRatio*/ * BlendColor.a ); 674 | 675 | return Color; 676 | } 677 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/Invert_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | SamplerState g_SrcSampler : register( s0 ) ; 4 | Texture2D g_SrcTexture : register( t0 ) ; 5 | 6 | float4 Invert_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 7 | { 8 | float4 Color; 9 | 10 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 11 | 12 | Color.rgb = float3(1,1,1) - Color.rgb; 13 | 14 | return Color; 15 | } 16 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/Level_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 Min_LenRev_AfterMin_AfterMax ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | SamplerState g_GammaSampler : register( s1 ) ; 12 | Texture2D g_GammaTexture : register( t1 ) ; 13 | 14 | float4 Level_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 15 | { 16 | float4 Color; 17 | float3 Rgb; 18 | float Ratio; 19 | 20 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 21 | 22 | Rgb.rgb = saturate( ( Color.rgb - Min_LenRev_AfterMin_AfterMax.xxx ) * Min_LenRev_AfterMin_AfterMax.y ); 23 | 24 | Ratio = g_GammaTexture.Sample( g_GammaSampler, float2( Rgb.r, 0.0 ) ).r ; 25 | Color.r = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 26 | 27 | Ratio = g_GammaTexture.Sample( g_GammaSampler, float2( Rgb.g, 0.0 ) ).r ; 28 | Color.g = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 29 | 30 | Ratio = g_GammaTexture.Sample( g_GammaSampler, float2( Rgb.b, 0.0 ) ).r ; 31 | Color.b = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 32 | 33 | return Color; 34 | } 35 | 36 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/Mono_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 RGBToY ; 6 | float4 YCbCrToRGB ; 7 | } ; 8 | 9 | SamplerState g_SrcSampler : register( s0 ) ; 10 | Texture2D g_SrcTexture : register( t0 ) ; 11 | 12 | float4 Mono_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 13 | { 14 | float4 Color; 15 | float3 Rgb; 16 | float3 RGBToY_F3; 17 | float3 YCbCrToRGB_F3; 18 | 19 | RGBToY_F3 = RGBToY.rgb; 20 | YCbCrToRGB_F3 = YCbCrToRGB.rgb; 21 | 22 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 23 | Rgb = Color.rgb; 24 | 25 | Rgb.rgb = dot( Rgb, RGBToY_F3 ); 26 | Color.rgb = Rgb + YCbCrToRGB_F3; 27 | 28 | return Color; 29 | } 30 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/PremultipliedAlpha_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | SamplerState g_SrcSampler : register( s0 ) ; 4 | Texture2D g_SrcTexture : register( t0 ) ; 5 | 6 | float4 PremultipliedAlpha_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 7 | { 8 | float4 Color; 9 | 10 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 11 | 12 | Color.rgb = Color.rgb * Color.a; 13 | 14 | return Color; 15 | } 16 | 17 | float4 InterpolatedAlpha_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 18 | { 19 | float4 Color; 20 | 21 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 22 | 23 | if( Color.a < 0.001f ) 24 | { 25 | Color.r = 0.0f ; 26 | Color.g = 0.0f ; 27 | Color.b = 0.0f ; 28 | } 29 | else 30 | { 31 | Color.rgb = Color.rgb / Color.a; 32 | } 33 | 34 | return Color; 35 | } 36 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/TwoColor_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 RGBToY_Cmp ; 6 | float4 LowColor ; 7 | float4 HighColor ; 8 | } ; 9 | 10 | SamplerState g_SrcSampler : register( s0 ) ; 11 | Texture2D g_SrcTexture : register( t0 ) ; 12 | 13 | float4 TwoColor_PS(STRETCHRECT_VS_OUTPUT In) : SV_TARGET0 14 | { 15 | float4 Color; 16 | 17 | Color = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 18 | 19 | if( dot( Color.rgb, RGBToY_Cmp.rgb ) > RGBToY_Cmp.w ) 20 | { 21 | Color = HighColor; 22 | } 23 | else 24 | { 25 | Color = LowColor; 26 | } 27 | 28 | return Color; 29 | } 30 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/Filter/YuvToRgb_PS.hlsl: -------------------------------------------------------------------------------- 1 | #include "../PixelShader.h" 2 | 3 | cbuffer cbNormal : register( b3 ) 4 | { 5 | float4 UVTextureCoordScale_RRA_Add_U ; 6 | } ; 7 | 8 | SamplerState g_SrcSampler : register( s0 ) ; 9 | Texture2D g_SrcTexture : register( t0 ) ; 10 | 11 | SamplerState g_UVSampler : register( s1 ) ; 12 | Texture2D g_UVTexture : register( t1 ) ; 13 | 14 | float4 Y2UV2toRGB_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 15 | { 16 | float4 DestColor ; 17 | float4 YUVColor ; 18 | 19 | YUVColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 20 | 21 | DestColor.r = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 1.596f * ( YUVColor.b - 0.5f ) ) ; 22 | DestColor.g = saturate( 1.164f * ( YUVColor.r - 0.0625f ) - 0.391f * ( YUVColor.g - 0.5f ) - 0.813f * ( YUVColor.b - 0.5f ) ) ; 23 | DestColor.b = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 2.018f * ( YUVColor.g - 0.5f ) ) ; 24 | DestColor.a = 1.0f ; 25 | 26 | return DestColor ; 27 | } 28 | 29 | float4 Y2UV2toRGB_RRA_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 30 | { 31 | float4 DestColor ; 32 | float4 YUVColor ; 33 | float4 A_YUVColor ; 34 | float2 A_TexCoords ; 35 | 36 | YUVColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 37 | 38 | A_TexCoords = In.TexCoords0 ; 39 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.z ; 40 | A_YUVColor = g_SrcTexture.Sample( g_SrcSampler, A_TexCoords ) ; 41 | 42 | DestColor.r = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 1.596f * ( YUVColor.b - 0.5f ) ) ; 43 | DestColor.g = saturate( 1.164f * ( YUVColor.r - 0.0625f ) - 0.391f * ( YUVColor.g - 0.5f ) - 0.813f * ( YUVColor.b - 0.5f ) ) ; 44 | DestColor.b = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 2.018f * ( YUVColor.g - 0.5f ) ) ; 45 | DestColor.a = saturate( 1.164f * ( A_YUVColor.r - 0.0625f ) + 1.596f * ( A_YUVColor.b - 0.5f ) ) ; 46 | 47 | return DestColor ; 48 | } 49 | 50 | float4 Y2UV1toRGB_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 51 | { 52 | float4 DestColor ; 53 | float4 YColor ; 54 | float4 UVColor ; 55 | float2 UVTexCoord ; 56 | 57 | YColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 58 | UVTexCoord = In.TexCoords0 ; 59 | UVTexCoord.x *= UVTextureCoordScale_RRA_Add_U.x ; 60 | UVTexCoord.y *= UVTextureCoordScale_RRA_Add_U.y ; 61 | UVColor = g_UVTexture.Sample( g_UVSampler, UVTexCoord ) ; 62 | 63 | DestColor.r = saturate( 1.164f * ( YColor.r - 0.0625f ) + 1.596f * ( UVColor.g - 0.5f ) ) ; 64 | DestColor.g = saturate( 1.164f * ( YColor.r - 0.0625f ) - 0.391f * ( UVColor.r - 0.5f ) - 0.813f * ( UVColor.g - 0.5f ) ) ; 65 | DestColor.b = saturate( 1.164f * ( YColor.r - 0.0625f ) + 2.018f * ( UVColor.r - 0.5f ) ) ; 66 | DestColor.a = 1.0f ; 67 | 68 | return DestColor ; 69 | } 70 | 71 | float4 Y2UV1toRGB_RRA_PS( STRETCHRECT_VS_OUTPUT In ) : SV_TARGET0 72 | { 73 | float4 DestColor ; 74 | float4 YColor ; 75 | float4 UVColor ; 76 | float2 UVTexCoord ; 77 | float4 A_YColor ; 78 | float4 A_UVColor ; 79 | float2 A_TexCoords ; 80 | 81 | YColor = g_SrcTexture.Sample( g_SrcSampler, In.TexCoords0 ) ; 82 | UVTexCoord = In.TexCoords0 ; 83 | UVTexCoord.x *= UVTextureCoordScale_RRA_Add_U.x ; 84 | UVTexCoord.y *= UVTextureCoordScale_RRA_Add_U.y ; 85 | UVColor = g_UVTexture.Sample( g_UVSampler, UVTexCoord ) ; 86 | 87 | A_TexCoords = In.TexCoords0 ; 88 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.z ; 89 | A_YColor = g_SrcTexture.Sample( g_SrcSampler, A_TexCoords ) ; 90 | A_TexCoords = In.TexCoords0 ; 91 | A_TexCoords.x *= UVTextureCoordScale_RRA_Add_U.x ; 92 | A_TexCoords.y *= UVTextureCoordScale_RRA_Add_U.y ; 93 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.w ; 94 | A_UVColor = g_UVTexture.Sample( g_UVSampler, A_TexCoords ) ; 95 | 96 | DestColor.r = saturate( 1.164f * ( YColor.r - 0.0625f ) + 1.596f * ( UVColor.g - 0.5f ) ) ; 97 | DestColor.g = saturate( 1.164f * ( YColor.r - 0.0625f ) - 0.391f * ( UVColor.r - 0.5f ) - 0.813f * ( UVColor.g - 0.5f ) ) ; 98 | DestColor.b = saturate( 1.164f * ( YColor.r - 0.0625f ) + 2.018f * ( UVColor.r - 0.5f ) ) ; 99 | DestColor.a = saturate( 1.164f * ( A_YColor.r - 0.0625f ) + 1.596f * ( A_UVColor.g - 0.5f ) ) ; 100 | 101 | return DestColor ; 102 | } 103 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_PixelLighting_PS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_PixelLighting_PS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_PixelLighting_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_PixelLighting_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_VertexLighting_PS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_VertexLighting_PS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_VertexLighting_VS.hlsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/MV1DefaultShader/MV1Default_VertexLighting_VS.hlsl -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/PixelShader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/PixelShader.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D11/VertexShader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D11/VertexShader.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Base.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/Base.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/BaseVertexShader.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/BaseVertexShader.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/BasicBlendFilter.fx: -------------------------------------------------------------------------------- 1 | float BlendRatio : register( c0 ) ; 2 | float4 One : register( c1 ) ; 3 | sampler SrcTexture : register( s0 ) ; 4 | sampler BlendTexture : register( s1 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | float2 TexCoords1 : TEXCOORD1 ; 11 | } ; 12 | 13 | float4 Normal_PS( VS_OUTPUT In ) : Color 14 | { 15 | float4 Color; 16 | float4 BlendColor; 17 | 18 | Color = tex2D( SrcTexture, In.TexCoords0 ); 19 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 20 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 21 | 22 | return Color; 23 | } 24 | 25 | float4 Normal_AlphaCh_PS( VS_OUTPUT In ) : Color 26 | { 27 | float4 Color; 28 | float4 BlendColor; 29 | float Ta; 30 | float RSa; 31 | 32 | Color = tex2D( SrcTexture, In.TexCoords0 ); 33 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 34 | BlendColor.a *= BlendRatio; 35 | RSa = ( 1.0f - BlendColor.a ); 36 | Ta = RSa * Color.a + BlendColor.a; 37 | Color = ( RSa * Color.a * Color + BlendColor.a * BlendColor ) / Ta; 38 | Color.a = Ta; 39 | 40 | return Color; 41 | } 42 | 43 | float4 Add_AlphaCh_PS( VS_OUTPUT In ) : Color 44 | { 45 | float4 Color; 46 | float4 BlendColor; 47 | float Ta; 48 | float RSa; 49 | 50 | Color = tex2D( SrcTexture, In.TexCoords0 ); 51 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 52 | BlendColor.a *= BlendRatio; 53 | RSa = ( 1.0f - BlendColor.a ); 54 | Ta = RSa * Color.a + BlendColor.a; 55 | Color = ( Color.a * Color + BlendColor.a * BlendColor ) / Ta; 56 | Color.a = Ta; 57 | Color = saturate( Color ); 58 | 59 | return Color; 60 | } 61 | 62 | float4 Multiple_PS( VS_OUTPUT In ) : Color 63 | { 64 | float4 Color; 65 | float4 BlendColor; 66 | 67 | Color = tex2D( SrcTexture, In.TexCoords0 ); 68 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 69 | Color.rgb = lerp( Color.rgb, Color.rgb * BlendColor.rgb, BlendRatio * BlendColor.a ); 70 | 71 | return Color; 72 | } 73 | 74 | float4 Difference_PS( VS_OUTPUT In ) : Color 75 | { 76 | float4 Color; 77 | float4 BlendColor; 78 | 79 | Color = tex2D( SrcTexture, In.TexCoords0 ); 80 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 81 | Color.rgb = lerp( Color.rgb, saturate( Color.rgb - BlendColor.rgb ), BlendRatio * BlendColor.a ); 82 | 83 | return Color; 84 | } 85 | 86 | float4 Add_PS( VS_OUTPUT In ) : Color 87 | { 88 | float4 Color; 89 | float4 BlendColor; 90 | 91 | Color = tex2D( SrcTexture, In.TexCoords0 ); 92 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 93 | Color.rgb = lerp( Color.rgb, saturate( Color.rgb + BlendColor.rgb ), BlendRatio * BlendColor.a ); 94 | 95 | return Color; 96 | } 97 | 98 | float4 Screen_PS( VS_OUTPUT In ) : Color 99 | { 100 | float4 Color; 101 | float4 BlendColor; 102 | 103 | Color = tex2D( SrcTexture, In.TexCoords0 ); 104 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 105 | Color.rgb = lerp( Color.rgb, One.rgb - (( One.rgb - Color.rgb ) * ( One.rgb - BlendColor.rgb )), BlendRatio * BlendColor.a ); 106 | 107 | return Color; 108 | } 109 | 110 | float4 Overlay_PS( VS_OUTPUT In ) : Color 111 | { 112 | float4 Color; 113 | float4 BlendColor; 114 | 115 | Color = tex2D( SrcTexture, In.TexCoords0 ); 116 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 117 | 118 | if( Color.r < 0.5 ) 119 | { 120 | BlendColor.r = Color.r * BlendColor.r * 2.0; 121 | } 122 | else 123 | { 124 | BlendColor.r = 2.0 * ( Color.r + BlendColor.r - Color.r * BlendColor.r ) - 1.0; 125 | } 126 | 127 | if( Color.g < 0.5 ) 128 | { 129 | BlendColor.g = Color.g * BlendColor.g * 2.0; 130 | } 131 | else 132 | { 133 | BlendColor.g = 2.0 * ( Color.g + BlendColor.g - Color.g * BlendColor.g ) - 1.0; 134 | } 135 | 136 | if( Color.b < 0.5 ) 137 | { 138 | BlendColor.b = Color.b * BlendColor.b * 2.0; 139 | } 140 | else 141 | { 142 | BlendColor.b = 2.0 * ( Color.b + BlendColor.b - Color.b * BlendColor.b ) - 1.0; 143 | } 144 | BlendColor = saturate( BlendColor ); 145 | 146 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 147 | 148 | return Color; 149 | } 150 | 151 | float4 Dodge_PS( VS_OUTPUT In ) : Color 152 | { 153 | float4 Color; 154 | float4 BlendColor; 155 | 156 | Color = tex2D( SrcTexture, In.TexCoords0 ); 157 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 158 | 159 | if( BlendColor.r <= 0.999 ) 160 | { 161 | BlendColor.r = Color.r / ( 1.0 - BlendColor.r ); 162 | } 163 | else 164 | { 165 | BlendColor.r = 1.0; 166 | } 167 | 168 | if( BlendColor.g <= 0.999 ) 169 | { 170 | BlendColor.g = Color.g / ( 1.0 - BlendColor.g ); 171 | } 172 | else 173 | { 174 | BlendColor.g = 1.0; 175 | } 176 | 177 | if( BlendColor.b <= 0.999 ) 178 | { 179 | BlendColor.b = Color.b / ( 1.0 - BlendColor.b ); 180 | } 181 | else 182 | { 183 | BlendColor.b = 1.0; 184 | } 185 | 186 | BlendColor = saturate( BlendColor ); 187 | 188 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 189 | 190 | return Color; 191 | } 192 | 193 | float4 Burn_PS( VS_OUTPUT In ) : Color 194 | { 195 | float4 Color; 196 | float4 BlendColor; 197 | 198 | Color = tex2D( SrcTexture, In.TexCoords0 ); 199 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 200 | 201 | if( BlendColor.r > 0.0001 ) 202 | { 203 | BlendColor.r = 1.0 - ( 1.0 - Color.r ) / BlendColor.r ; 204 | } 205 | 206 | if( BlendColor.g > 0.0001 ) 207 | { 208 | BlendColor.g = 1.0 - ( 1.0 - Color.g ) / BlendColor.g ; 209 | } 210 | 211 | if( BlendColor.b > 0.0001 ) 212 | { 213 | BlendColor.b = 1.0 - ( 1.0 - Color.b ) / BlendColor.b ; 214 | } 215 | 216 | BlendColor = saturate( BlendColor ); 217 | 218 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 219 | 220 | return Color; 221 | } 222 | 223 | float4 Darken_PS( VS_OUTPUT In ) : Color 224 | { 225 | float4 Color; 226 | float4 BlendColor; 227 | 228 | Color = tex2D( SrcTexture, In.TexCoords0 ); 229 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 230 | 231 | if( Color.r < BlendColor.r ) 232 | { 233 | BlendColor.r = Color.r ; 234 | } 235 | 236 | if( Color.g < BlendColor.g ) 237 | { 238 | BlendColor.g = Color.g ; 239 | } 240 | 241 | if( Color.b < BlendColor.b ) 242 | { 243 | BlendColor.b = Color.b ; 244 | } 245 | 246 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 247 | 248 | return Color; 249 | } 250 | 251 | float4 Lighten_PS( VS_OUTPUT In ) : Color 252 | { 253 | float4 Color; 254 | float4 BlendColor; 255 | 256 | Color = tex2D( SrcTexture, In.TexCoords0 ); 257 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 258 | 259 | if( Color.r > BlendColor.r ) 260 | { 261 | BlendColor.r = Color.r ; 262 | } 263 | 264 | if( Color.g > BlendColor.g ) 265 | { 266 | BlendColor.g = Color.g ; 267 | } 268 | 269 | if( Color.b > BlendColor.b ) 270 | { 271 | BlendColor.b = Color.b ; 272 | } 273 | 274 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 275 | 276 | return Color; 277 | } 278 | 279 | float4 SoftLight_PS( VS_OUTPUT In ) : Color 280 | { 281 | float4 Color; 282 | float4 BlendColor; 283 | 284 | Color = tex2D( SrcTexture, In.TexCoords0 ); 285 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 286 | 287 | if( BlendColor.r < 0.5 ) 288 | { 289 | BlendColor.r = pow( Color.r, ( 1.0f - BlendColor.r ) * 2.0 ) ; 290 | } 291 | else 292 | { 293 | BlendColor.r = pow( Color.r, 0.5 / BlendColor.r ); 294 | } 295 | 296 | if( BlendColor.g < 0.5 ) 297 | { 298 | BlendColor.g = pow( Color.g, ( 1.0f - BlendColor.g ) * 2.0 ) ; 299 | } 300 | else 301 | { 302 | BlendColor.g = pow( Color.g, 0.5 / BlendColor.g ); 303 | } 304 | 305 | if( BlendColor.b < 0.5 ) 306 | { 307 | BlendColor.b = pow( Color.b, ( 1.0f - BlendColor.b ) * 2.0 ) ; 308 | } 309 | else 310 | { 311 | BlendColor.b = pow( Color.b, 0.5 / BlendColor.b ); 312 | } 313 | 314 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 315 | 316 | return Color; 317 | } 318 | 319 | float4 HardLight_PS( VS_OUTPUT In ) : Color 320 | { 321 | float4 Color; 322 | float4 BlendColor; 323 | 324 | Color = tex2D( SrcTexture, In.TexCoords0 ); 325 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 326 | 327 | if( BlendColor.r < 0.5 ) 328 | { 329 | BlendColor.r = Color.r * BlendColor.r * 2.0; 330 | } 331 | else 332 | { 333 | BlendColor.r = 2.0 * ( Color.r + BlendColor.r - Color.r * BlendColor.r ) - 1.0; 334 | } 335 | 336 | if( BlendColor.g < 0.5 ) 337 | { 338 | BlendColor.g = Color.g * BlendColor.g * 2.0; 339 | } 340 | else 341 | { 342 | BlendColor.g = 2.0 * ( Color.g + BlendColor.g - Color.g * BlendColor.g ) - 1.0; 343 | } 344 | 345 | if( BlendColor.b < 0.5 ) 346 | { 347 | BlendColor.b = Color.b * BlendColor.b * 2.0; 348 | } 349 | else 350 | { 351 | BlendColor.b = 2.0 * ( Color.b + BlendColor.b - Color.b * BlendColor.b ) - 1.0; 352 | } 353 | 354 | BlendColor = saturate( BlendColor ); 355 | 356 | Color.rgb = lerp( Color.rgb, BlendColor.rgb, BlendRatio * BlendColor.a ); 357 | 358 | return Color; 359 | } 360 | 361 | float4 Exclusion_PS( VS_OUTPUT In ) : Color 362 | { 363 | float4 Color; 364 | float4 BlendColor; 365 | 366 | Color = tex2D( SrcTexture, In.TexCoords0 ); 367 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 368 | Color.rgb = lerp( Color.rgb, Color.rgb + BlendColor.rgb - 2.0 * Color.rgb * BlendColor.rgb, BlendRatio * BlendColor.a ); 369 | 370 | return Color; 371 | } 372 | 373 | float4 Multiple_AOnly_PS( VS_OUTPUT In ) : Color 374 | { 375 | float4 Color; 376 | float4 BlendColor; 377 | 378 | Color = tex2D( SrcTexture, In.TexCoords0 ); 379 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ); 380 | Color.a = lerp( Color.a, BlendColor.a * Color.a, BlendRatio ); 381 | 382 | return Color; 383 | } 384 | 385 | float4 PMA_Multiple_AOnly_PS( VS_OUTPUT In ) : Color 386 | { 387 | float4 PremulColor; 388 | float4 LinearColor; 389 | float4 PremulBlendColor; 390 | float4 LinearBlendColor; 391 | float4 OutputLinearColor; 392 | float4 OutputPremulColor; 393 | 394 | PremulColor = tex2D( SrcTexture, In.TexCoords0 ); 395 | PremulBlendColor = tex2D( BlendTexture, In.TexCoords1 ); 396 | 397 | LinearColor = PremulColor / PremulColor.a; 398 | LinearColor.a = PremulColor.a; 399 | LinearBlendColor = PremulBlendColor / PremulBlendColor.a; 400 | LinearBlendColor.a = PremulBlendColor.a; 401 | 402 | OutputLinearColor = LinearColor; 403 | OutputLinearColor.a = lerp( LinearColor.a, LinearBlendColor.a * LinearColor.a, BlendRatio ); 404 | 405 | OutputPremulColor = OutputLinearColor * OutputLinearColor.a; 406 | OutputPremulColor.a = OutputLinearColor.a; 407 | 408 | return OutputPremulColor; 409 | } 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/BrightnessClip.fx: -------------------------------------------------------------------------------- 1 | float ClipBrightness : register( c0 ) ; 2 | float4 RGBToY : register( c1 ) ; 3 | float4 ClipFillColor : register( c2 ) ; 4 | sampler SrcTexture : register( s0 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | struct VS_INPUT 13 | { 14 | float4 Position : POSITION ; 15 | float4 Normal : NORMAL ; 16 | float4 Diffuse : COLOR0 ; 17 | float4 Specular : COLOR1 ; 18 | float2 TexCoords0 : TEXCOORD0 ; 19 | float2 TexCoords1 : TEXCOORD1 ; 20 | } ; 21 | 22 | VS_OUTPUT VS_main( VS_INPUT In ) 23 | { 24 | VS_OUTPUT Out = (VS_OUTPUT)0; 25 | 26 | Out.Position = In.Position; 27 | Out.TexCoords0 = In.TexCoords0; 28 | 29 | return Out; 30 | } 31 | 32 | float4 PS_Less(VS_OUTPUT In) : COLOR 33 | { 34 | float4 Color; 35 | 36 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 37 | clip( dot( RGBToY, Color ) - ClipBrightness ) ; 38 | 39 | return Color; 40 | } 41 | 42 | float4 PS_Less_ClipFill(VS_OUTPUT In) : COLOR 43 | { 44 | float4 Color; 45 | 46 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 47 | if( dot( RGBToY, Color ) < ClipBrightness ) 48 | { 49 | return ClipFillColor; 50 | } 51 | else 52 | { 53 | return Color; 54 | } 55 | } 56 | 57 | float4 PS_Greater(VS_OUTPUT In) : COLOR 58 | { 59 | float4 Color; 60 | 61 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 62 | clip( ClipBrightness - dot( RGBToY, Color ) ) ; 63 | 64 | return Color; 65 | } 66 | 67 | float4 PS_Greater_ClipFill(VS_OUTPUT In) : COLOR 68 | { 69 | float4 Color; 70 | 71 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 72 | if( dot( RGBToY, Color ) > ClipBrightness ) 73 | { 74 | return ClipFillColor; 75 | } 76 | else 77 | { 78 | return Color; 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/BrightnessScale.fx: -------------------------------------------------------------------------------- 1 | float4 g_MinB_ScaleB : register( c0 ) ; 2 | sampler SrcTexture : register( s0 ) ; 3 | 4 | struct VS_OUTPUT 5 | { 6 | float4 Position : POSITION ; 7 | float2 TexCoords0 : TEXCOORD0 ; 8 | } ; 9 | 10 | float4 BrightnessScale_PS(VS_OUTPUT In) : COLOR 11 | { 12 | float4 Color; 13 | float3 Hsb; 14 | float3 Rgb; 15 | float Max; 16 | float Min; 17 | float Delta; 18 | float3 Half; 19 | float3 One; 20 | 21 | Half = 0.5f; 22 | One = 1.0f; 23 | 24 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 25 | Rgb = Color.rgb; 26 | 27 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 28 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 29 | Delta = Max - Min; 30 | 31 | Hsb.z = ( Max + Min ) / 2.0; 32 | if( Max == Min ) 33 | { 34 | Hsb.y = 0.0f; 35 | 36 | Rgb.r = 1.0f; 37 | Rgb.g = 0.0f; 38 | Rgb.b = 0.0f; 39 | } 40 | else 41 | { 42 | float3 tRGB; 43 | float t; 44 | 45 | if( Hsb.z > 0.5 ) 46 | { 47 | Hsb.y = 2 - Max - Min; 48 | } 49 | else 50 | { 51 | Hsb.y = Max + Min; 52 | } 53 | Hsb.y = Delta / Hsb.y; 54 | 55 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 56 | if( Rgb.r == Max ) 57 | { 58 | Rgb.r = 1.0f; 59 | t = tRGB.b - tRGB.g; 60 | if( tRGB.b > tRGB.g ) 61 | { 62 | Rgb.b = 0.0f; 63 | Rgb.g = t ; 64 | } 65 | else 66 | { 67 | Rgb.b = -t ; 68 | Rgb.g = 0.0f; 69 | } 70 | } 71 | else 72 | if( Rgb.g == Max ) 73 | { 74 | Rgb.g = 1.0f; 75 | t = tRGB.r - tRGB.b; 76 | if( tRGB.r > tRGB.b ) 77 | { 78 | Rgb.r = 0.0f; 79 | Rgb.b = t ; 80 | } 81 | else 82 | { 83 | Rgb.r = -t ; 84 | Rgb.b = 0.0f; 85 | } 86 | } 87 | else 88 | { 89 | Rgb.b = 1.0f; 90 | t = tRGB.g - tRGB.r; 91 | if( tRGB.g > tRGB.r ) 92 | { 93 | Rgb.g = 0.0f; 94 | Rgb.r = t ; 95 | } 96 | else 97 | { 98 | Rgb.g = -t ; 99 | Rgb.r = 0.0f ; 100 | } 101 | } 102 | } 103 | 104 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 105 | 106 | Hsb.z = saturate( ( Hsb.z - g_MinB_ScaleB.x ) * g_MinB_ScaleB.y ) ; 107 | 108 | if( Hsb.z <= 0.5f ) 109 | { 110 | Rgb *= Hsb.z * 2.0f; 111 | } 112 | else 113 | { 114 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 115 | } 116 | 117 | Color.r = Rgb.r; 118 | Color.g = Rgb.g; 119 | Color.b = Rgb.b; 120 | 121 | return Color; 122 | } 123 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/DownScale.fx: -------------------------------------------------------------------------------- 1 | float2 PixelOffset[16] : register( c0 ) ; 2 | sampler SrcTexture : register( s0 ) ; 3 | 4 | struct VS_OUTPUT 5 | { 6 | float4 Position : POSITION ; 7 | float2 TexCoords0 : TEXCOORD0 ; 8 | } ; 9 | 10 | float4 Down_2_PS(VS_OUTPUT In) : COLOR 11 | { 12 | float4 Color; 13 | 14 | Color = tex2D( SrcTexture, In.TexCoords0 + PixelOffset[0] ) ; 15 | 16 | return Color; 17 | } 18 | 19 | 20 | float4 Down_4_PS(VS_OUTPUT In) : COLOR 21 | { 22 | float4 Color; 23 | 24 | Color = tex2D( SrcTexture, In.TexCoords0 + PixelOffset[0] ) ; 25 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[1] ) ; 26 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[2] ) ; 27 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[3] ) ; 28 | 29 | return Color / 4; 30 | } 31 | 32 | 33 | float4 Down_8_PS(VS_OUTPUT In) : COLOR 34 | { 35 | float4 Color; 36 | 37 | Color = tex2D( SrcTexture, In.TexCoords0 + PixelOffset[0] ) ; 38 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[1] ) ; 39 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[2] ) ; 40 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[3] ) ; 41 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[4] ) ; 42 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[5] ) ; 43 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[6] ) ; 44 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[7] ) ; 45 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[8] ) ; 46 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[9] ) ; 47 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[10] ) ; 48 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[11] ) ; 49 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[12] ) ; 50 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[13] ) ; 51 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[14] ) ; 52 | Color += tex2D( SrcTexture, In.TexCoords0 + PixelOffset[15] ) ; 53 | 54 | return Color / 16; 55 | } 56 | 57 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/DxPixelShaderFxCode.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/DxPixelShaderFxCode.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/DxPixelShaderFxCode2.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/DxPixelShaderFxCode2.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/DxVertexShaderFxCode.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/DxVertexShaderFxCode.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/DxVertexShaderFxCode2.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/DxVertexShaderFxCode2.h -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Gauss.fx: -------------------------------------------------------------------------------- 1 | float2 TextureSize : register( c0 ) ; 2 | float4 PixelWeight[4] : register( c1 ) ; 3 | float2 PixelOffset[16] : register( c5 ) ; 4 | sampler SrcTexture : register( s0 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 PS_8pixel(VS_OUTPUT In) : COLOR 13 | { 14 | float4 Color; 15 | 16 | Color = PixelWeight[0].x * tex2D( SrcTexture, In.TexCoords0 ); 17 | Color += PixelWeight[0].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 1 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 1 ] ) ); 18 | Color += PixelWeight[0].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 2 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 2 ] ) ); 19 | Color += PixelWeight[0].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 3 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 3 ] ) ); 20 | 21 | return Color; 22 | } 23 | 24 | float4 PS_16pixel(VS_OUTPUT In) : COLOR 25 | { 26 | float4 Color; 27 | 28 | Color = PixelWeight[0].x * tex2D( SrcTexture, In.TexCoords0 ); 29 | Color += PixelWeight[0].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 1 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 1 ] ) ); 30 | Color += PixelWeight[0].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 2 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 2 ] ) ); 31 | Color += PixelWeight[0].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 3 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 3 ] ) ); 32 | Color += PixelWeight[1].x * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 4 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 4 ] ) ); 33 | Color += PixelWeight[1].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 5 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 5 ] ) ); 34 | Color += PixelWeight[1].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 6 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 6 ] ) ); 35 | Color += PixelWeight[1].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 7 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 7 ] ) ); 36 | 37 | return Color; 38 | } 39 | 40 | float4 PS_32pixel(VS_OUTPUT In) : COLOR 41 | { 42 | float4 Color; 43 | 44 | Color = PixelWeight[0].x * tex2D( SrcTexture, In.TexCoords0 ); 45 | Color += PixelWeight[0].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 1 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 1 ] ) ); 46 | Color += PixelWeight[0].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 2 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 2 ] ) ); 47 | Color += PixelWeight[0].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 3 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 3 ] ) ); 48 | Color += PixelWeight[1].x * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 4 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 4 ] ) ); 49 | Color += PixelWeight[1].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 5 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 5 ] ) ); 50 | Color += PixelWeight[1].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 6 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 6 ] ) ); 51 | Color += PixelWeight[1].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 7 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 7 ] ) ); 52 | Color += PixelWeight[2].x * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 8 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 8 ] ) ); 53 | Color += PixelWeight[2].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 9 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 9 ] ) ); 54 | Color += PixelWeight[2].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 10 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 10 ] ) ); 55 | Color += PixelWeight[2].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 11 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 11 ] ) ); 56 | Color += PixelWeight[3].x * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 12 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 12 ] ) ); 57 | Color += PixelWeight[3].y * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 13 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 13 ] ) ); 58 | Color += PixelWeight[3].z * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 14 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 14 ] ) ); 59 | Color += PixelWeight[3].w * ( tex2D( SrcTexture, In.TexCoords0 + PixelOffset[ 15 ] ) + tex2D( SrcTexture, In.TexCoords0 - PixelOffset[ 15 ] ) ); 60 | 61 | return Color; 62 | } 63 | 64 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/GradientMap.fx: -------------------------------------------------------------------------------- 1 | float3 RGBToY : register( c0 ) ; 2 | 3 | sampler SrcTexture : register( s0 ) ; 4 | sampler GradientMapTexture : register( s1 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 GradientMap_PS(VS_OUTPUT In) : COLOR 13 | { 14 | float4 DestColor ; 15 | float4 SrcColor ; 16 | 17 | SrcColor = tex2D( SrcTexture, In.TexCoords0 ) ; 18 | DestColor = tex2D( GradientMapTexture, float2( dot( SrcColor.rgb, RGBToY.rgb ), 0 ) ) ; 19 | DestColor.a *= SrcColor.a ; 20 | 21 | return DestColor ; 22 | } 23 | 24 | float4 GradientMapRev_PS(VS_OUTPUT In) : COLOR 25 | { 26 | float4 DestColor ; 27 | float4 SrcColor ; 28 | 29 | SrcColor = tex2D( SrcTexture, In.TexCoords0 ) ; 30 | DestColor = tex2D( GradientMapTexture, float2( 1.0f - dot( SrcColor.rgb, RGBToY.rgb ), 0 ) ) ; 31 | DestColor.a *= SrcColor.a ; 32 | 33 | return DestColor ; 34 | } 35 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Hsb.fx: -------------------------------------------------------------------------------- 1 | float4 Param : register( c0 ) ; 2 | float BlendRatio : register( c0 ) ; 3 | float3 Half : register( c1 ) ; 4 | float3 One : register( c2 ) ; 5 | sampler SrcTexture : register( s0 ) ; 6 | sampler BlendTexture : register( s1 ) ; 7 | 8 | struct VS_OUTPUT 9 | { 10 | float4 Position : POSITION ; 11 | float2 TexCoords0 : TEXCOORD0 ; 12 | } ; 13 | 14 | struct VS_OUTPUT2 15 | { 16 | float4 Position : POSITION ; 17 | float2 TexCoords0 : TEXCOORD0 ; 18 | float2 TexCoords1 : TEXCOORD1 ; 19 | } ; 20 | 21 | float4 RGB_To_HSB_PS(VS_OUTPUT In) : COLOR 22 | { 23 | float4 Color; 24 | float3 Hsb; 25 | float3 Rgb; 26 | float Max; 27 | float Min; 28 | float Delta; 29 | 30 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 31 | Rgb = Color.rgb; 32 | 33 | if( Param.z > 0.0 ) 34 | { 35 | Rgb += ( One - Rgb ) * Param.z; 36 | } 37 | else 38 | { 39 | Rgb *= 1.0 + Param.z; 40 | } 41 | Rgb = saturate( Rgb ); 42 | 43 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 44 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 45 | Delta = Max - Min; 46 | 47 | Hsb.z = ( Max + Min ) / 2.0; 48 | if( Max == Min ) 49 | { 50 | Hsb.x = 0.0f; 51 | Hsb.y = 0.0f; 52 | } 53 | else 54 | { 55 | float3 tRGB; 56 | 57 | if( Hsb.z > 0.5 ) 58 | { 59 | Hsb.y = 2 - Max - Min; 60 | } 61 | else 62 | { 63 | Hsb.y = Max + Min; 64 | } 65 | Hsb.y = Delta / Hsb.y; 66 | 67 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 68 | if( Rgb.r == Max ) 69 | { 70 | Hsb.x = tRGB.b - tRGB.g; 71 | } 72 | else 73 | if( Rgb.g == Max ) 74 | { 75 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 76 | } 77 | else 78 | { 79 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 80 | } 81 | if( Hsb.x < 0.0 ) 82 | { 83 | Hsb.x += 6.0; 84 | } 85 | Hsb.x /= 6.0; 86 | } 87 | 88 | Color.r = Hsb.x; 89 | Color.g = Hsb.y; 90 | Color.b = Hsb.z; 91 | 92 | return Color; 93 | } 94 | 95 | float4 HSB_HLOCK_PS(VS_OUTPUT In) : COLOR 96 | { 97 | float4 Color; 98 | float3 Hsb; 99 | float3 Rgb; 100 | float Max; 101 | float Min; 102 | float Delta; 103 | 104 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 105 | Rgb = Color.rgb; 106 | 107 | if( Param.z > 0.0 ) 108 | { 109 | Rgb += ( One - Rgb ) * Param.z; 110 | } 111 | else 112 | { 113 | Rgb *= 1.0 + Param.z; 114 | } 115 | Rgb = saturate( Rgb ); 116 | 117 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 118 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 119 | Delta = Max - Min; 120 | 121 | Hsb.z = ( Max + Min ) / 2.0; 122 | if( Max == Min ) 123 | { 124 | Hsb.y = 0.0f; 125 | } 126 | else 127 | { 128 | float3 tRGB; 129 | 130 | if( Hsb.z > 0.5 ) 131 | { 132 | Hsb.y = 2 - Max - Min; 133 | } 134 | else 135 | { 136 | Hsb.y = Max + Min; 137 | } 138 | Hsb.y = Delta / Hsb.y; 139 | } 140 | 141 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 142 | 143 | if( Param.x < 1.0f ) 144 | { 145 | Rgb.r = 1.0f ; 146 | Rgb.g = Param.x ; 147 | Rgb.b = 0.0f ; 148 | } 149 | else 150 | if( Param.x < 2.0f ) 151 | { 152 | Rgb.r = 1.0f - ( Param.x - 1.0f ) ; 153 | Rgb.g = 1.0f ; 154 | Rgb.b = 0.0f ; 155 | } 156 | else 157 | if( Param.x < 3.0f ) 158 | { 159 | Rgb.r = 0.0f ; 160 | Rgb.g = 1.0f ; 161 | Rgb.b = Param.x - 2.0f ; 162 | } 163 | else 164 | if( Param.x < 4.0f ) 165 | { 166 | Rgb.r = 0.0f ; 167 | Rgb.g = 1.0f - ( Param.x - 3.0f ) ; 168 | Rgb.b = 1.0f ; 169 | } 170 | else 171 | if( Param.x < 5.0f ) 172 | { 173 | Rgb.r = Param.x - 4.0f ; 174 | Rgb.g = 0.0f ; 175 | Rgb.b = 1.0f ; 176 | } 177 | else 178 | { 179 | Rgb.r = 1.0f ; 180 | Rgb.g = 0.0f ; 181 | Rgb.b = 1.0f - ( Param.x - 5.0f ) ; 182 | } 183 | 184 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 185 | 186 | if( Hsb.z <= 0.5f ) 187 | { 188 | Rgb *= Hsb.z * 2.0f; 189 | } 190 | else 191 | { 192 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 193 | } 194 | 195 | Color.r = Rgb.r; 196 | Color.g = Rgb.g; 197 | Color.b = Rgb.b; 198 | 199 | return Color; 200 | } 201 | 202 | float4 HSB_To_RGB_PS(VS_OUTPUT In) : COLOR 203 | { 204 | float4 Color; 205 | float3 Hsb; 206 | float3 Rgb; 207 | float Max; 208 | float Min; 209 | float Delta; 210 | 211 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 212 | Hsb = Color.rgb; 213 | 214 | Hsb.x *= 6.0f; 215 | Hsb.x += Param.x; 216 | if( Hsb.x < 0.0f ) 217 | { 218 | Hsb.x += 6.0; 219 | } 220 | else 221 | if( Hsb.x >= 6.0f ) 222 | { 223 | Hsb.x -= 6.0; 224 | } 225 | 226 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 227 | 228 | if( Hsb.x < 1.0f ) 229 | { 230 | Rgb.r = 1.0f ; 231 | Rgb.g = Hsb.x ; 232 | Rgb.b = 0.0f ; 233 | } 234 | else 235 | if( Hsb.x < 2.0f ) 236 | { 237 | Rgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 238 | Rgb.g = 1.0f ; 239 | Rgb.b = 0.0f ; 240 | } 241 | else 242 | if( Hsb.x < 3.0f ) 243 | { 244 | Rgb.r = 0.0f ; 245 | Rgb.g = 1.0f ; 246 | Rgb.b = Hsb.x - 2.0f ; 247 | } 248 | else 249 | if( Hsb.x < 4.0f ) 250 | { 251 | Rgb.r = 0.0f ; 252 | Rgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 253 | Rgb.b = 1.0f ; 254 | } 255 | else 256 | if( Hsb.x < 5.0f ) 257 | { 258 | Rgb.r = Hsb.x - 4.0f ; 259 | Rgb.g = 0.0f ; 260 | Rgb.b = 1.0f ; 261 | } 262 | else 263 | { 264 | Rgb.r = 1.0f ; 265 | Rgb.g = 0.0f ; 266 | Rgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 267 | } 268 | 269 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 270 | 271 | if( Hsb.z <= 0.5f ) 272 | { 273 | Rgb *= Hsb.z * 2.0f; 274 | } 275 | else 276 | { 277 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 278 | } 279 | 280 | Color.r = Rgb.r; 281 | Color.g = Rgb.g; 282 | Color.b = Rgb.b; 283 | 284 | return Color; 285 | } 286 | 287 | 288 | 289 | 290 | 291 | 292 | float4 HSB_Base_PS(VS_OUTPUT In) : COLOR 293 | { 294 | float4 Color; 295 | float3 Hsb; 296 | float3 Rgb; 297 | float Max; 298 | float Min; 299 | float Delta; 300 | 301 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 302 | Rgb = Color.rgb; 303 | 304 | if( Param.z > 0.0 ) 305 | { 306 | Rgb += ( One - Rgb ) * Param.z; 307 | } 308 | else 309 | { 310 | Rgb *= 1.0 + Param.z; 311 | } 312 | Rgb = saturate( Rgb ); 313 | 314 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 315 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 316 | Delta = Max - Min; 317 | 318 | Hsb.z = ( Max + Min ) / 2.0; 319 | if( Max == Min ) 320 | { 321 | Hsb.x = 0.0f; 322 | Hsb.y = 0.0f; 323 | } 324 | else 325 | { 326 | float3 tRGB; 327 | 328 | if( Hsb.z > 0.5 ) 329 | { 330 | Hsb.y = 2 - Max - Min; 331 | } 332 | else 333 | { 334 | Hsb.y = Max + Min; 335 | } 336 | Hsb.y = Delta / Hsb.y; 337 | 338 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 339 | if( Rgb.r == Max ) 340 | { 341 | Hsb.x = tRGB.b - tRGB.g; 342 | } 343 | else 344 | if( Rgb.g == Max ) 345 | { 346 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 347 | } 348 | else 349 | { 350 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 351 | } 352 | if( Hsb.x < 0.0 ) 353 | { 354 | Hsb.x += 6.0; 355 | } 356 | } 357 | 358 | Hsb.x += Param.x; 359 | if( Hsb.x < 0.0f ) 360 | { 361 | Hsb.x += 6.0; 362 | } 363 | else 364 | if( Hsb.x >= 6.0f ) 365 | { 366 | Hsb.x -= 6.0; 367 | } 368 | 369 | Hsb.y = saturate( Hsb.y * ( 1.0 + Param.y ) ); 370 | 371 | if( Hsb.x < 1.0f ) 372 | { 373 | Rgb.r = 1.0f ; 374 | Rgb.g = Hsb.x ; 375 | Rgb.b = 0.0f ; 376 | } 377 | else 378 | if( Hsb.x < 2.0f ) 379 | { 380 | Rgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 381 | Rgb.g = 1.0f ; 382 | Rgb.b = 0.0f ; 383 | } 384 | else 385 | if( Hsb.x < 3.0f ) 386 | { 387 | Rgb.r = 0.0f ; 388 | Rgb.g = 1.0f ; 389 | Rgb.b = Hsb.x - 2.0f ; 390 | } 391 | else 392 | if( Hsb.x < 4.0f ) 393 | { 394 | Rgb.r = 0.0f ; 395 | Rgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 396 | Rgb.b = 1.0f ; 397 | } 398 | else 399 | if( Hsb.x < 5.0f ) 400 | { 401 | Rgb.r = Hsb.x - 4.0f ; 402 | Rgb.g = 0.0f ; 403 | Rgb.b = 1.0f ; 404 | } 405 | else 406 | { 407 | Rgb.r = 1.0f ; 408 | Rgb.g = 0.0f ; 409 | Rgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 410 | } 411 | 412 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsb.y ); 413 | 414 | if( Hsb.z <= 0.5f ) 415 | { 416 | Rgb *= Hsb.z * 2.0f; 417 | } 418 | else 419 | { 420 | Rgb += ( One - Rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 421 | } 422 | 423 | Color.r = Rgb.r; 424 | Color.g = Rgb.g; 425 | Color.b = Rgb.b; 426 | 427 | return Color; 428 | } 429 | 430 | 431 | 432 | 433 | 434 | 435 | float4 HSB_Blend_Hue_PS(VS_OUTPUT2 In) : COLOR 436 | { 437 | float4 Color; 438 | float4 BlendColor; 439 | float3 Hsb; 440 | float3 Rgb; 441 | float3 DestRgb; 442 | float2 Max; 443 | float2 Min; 444 | float2 Delta; 445 | 446 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 447 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ) ; 448 | Rgb = Color.rgb; 449 | 450 | Max.x = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 451 | Min.x = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 452 | Delta.x = Max.x - Min.x; 453 | 454 | Max.y = max( BlendColor.r, max( BlendColor.g, BlendColor.b ) ); 455 | Min.y = min( BlendColor.r, min( BlendColor.g, BlendColor.b ) ); 456 | Delta.y = Max.y - Min.y; 457 | 458 | Hsb.z = ( Max.x + Min.x ) / 2.0; 459 | if( Max.x != Min.x ) 460 | { 461 | if( Hsb.z > 0.5 ) 462 | { 463 | Hsb.y = 2 - Max.x - Min.x; 464 | } 465 | else 466 | { 467 | Hsb.y = Max.x + Min.x; 468 | } 469 | Hsb.y = Delta.x / Hsb.y; 470 | } 471 | 472 | if( Max.y != Min.y ) 473 | { 474 | float3 tRGB; 475 | 476 | tRGB = ( Max.yyy - BlendColor.rgb ) / Delta.y; 477 | if( BlendColor.r == Max.y ) 478 | { 479 | Hsb.x = tRGB.b - tRGB.g; 480 | } 481 | else 482 | if( BlendColor.g == Max.y ) 483 | { 484 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 485 | } 486 | else 487 | { 488 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 489 | } 490 | if( Hsb.x < 0.0 ) 491 | { 492 | Hsb.x += 6.0; 493 | } 494 | } 495 | 496 | if( Hsb.x < 1.0f ) 497 | { 498 | DestRgb.r = 1.0f ; 499 | DestRgb.g = Hsb.x ; 500 | } 501 | else 502 | if( Hsb.x < 2.0f ) 503 | { 504 | DestRgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 505 | DestRgb.g = 1.0f ; 506 | } 507 | else 508 | if( Hsb.x < 3.0f ) 509 | { 510 | DestRgb.g = 1.0f ; 511 | DestRgb.b = Hsb.x - 2.0f ; 512 | } 513 | else 514 | if( Hsb.x < 4.0f ) 515 | { 516 | DestRgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 517 | DestRgb.b = 1.0f ; 518 | } 519 | else 520 | if( Hsb.x < 5.0f ) 521 | { 522 | DestRgb.r = Hsb.x - 4.0f ; 523 | DestRgb.b = 1.0f ; 524 | } 525 | else 526 | { 527 | DestRgb.r = 1.0f ; 528 | DestRgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 529 | } 530 | 531 | DestRgb.rgb += ( Half.rgb - DestRgb.rgb ) * ( 1.0f - Hsb.y ); 532 | 533 | if( Hsb.z <= 0.5f ) 534 | { 535 | DestRgb.rgb *= Hsb.z * 2.0f; 536 | } 537 | else 538 | { 539 | DestRgb.rgb += ( One.rgb - DestRgb.rgb ) * ( ( Hsb.z - 0.5f ) * 2.0f ); 540 | } 541 | 542 | Color.rgb = lerp( Color.rgb, DestRgb.rgb, BlendRatio * BlendColor.a ); 543 | 544 | return Color; 545 | } 546 | 547 | float4 HSB_Blend_Saturation_PS(VS_OUTPUT2 In) : COLOR 548 | { 549 | float4 Color; 550 | float4 BlendColor; 551 | float3 Hsb; 552 | float3 Rgb; 553 | float3 DestRgb; 554 | float2 Max; 555 | float2 Min; 556 | float2 Delta; 557 | 558 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 559 | BlendColor = tex2D( BlendTexture, In.TexCoords1 ) ; 560 | Rgb = Color.rgb; 561 | 562 | Max.x = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 563 | Min.x = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 564 | Delta.x = Max.x - Min.x; 565 | 566 | Max.y = max( BlendColor.r, max( BlendColor.g, BlendColor.b ) ); 567 | Min.y = min( BlendColor.r, min( BlendColor.g, BlendColor.b ) ); 568 | Delta.y = Max.y - Min.y; 569 | 570 | Hsb.z = Max.x + Min.x; 571 | if( Max.x != Min.x ) 572 | { 573 | float3 tRGB; 574 | 575 | tRGB = ( Max.xxx - Color.rgb ) / Delta.x; 576 | if( Color.r == Max.x ) 577 | { 578 | Hsb.x = tRGB.b - tRGB.g; 579 | } 580 | else 581 | if( Color.g == Max.x ) 582 | { 583 | Hsb.x = 2.0 + tRGB.r - tRGB.b; 584 | } 585 | else 586 | { 587 | Hsb.x = 4.0 + tRGB.g - tRGB.r; 588 | } 589 | if( Hsb.x < 0.0 ) 590 | { 591 | Hsb.x += 6.0; 592 | } 593 | } 594 | 595 | if( Max.y != Min.y ) 596 | { 597 | if( Max.y + Min.y > 1.0 ) 598 | { 599 | Hsb.y = 2 - ( Max.y + Min.y ); 600 | } 601 | else 602 | { 603 | Hsb.y = Max.y + Min.y; 604 | } 605 | Hsb.y = Delta.y / Hsb.y; 606 | } 607 | 608 | if( Hsb.x < 1.0f ) 609 | { 610 | DestRgb.r = 1.0f ; 611 | DestRgb.g = Hsb.x ; 612 | } 613 | else 614 | if( Hsb.x < 2.0f ) 615 | { 616 | DestRgb.r = 1.0f - ( Hsb.x - 1.0f ) ; 617 | DestRgb.g = 1.0f ; 618 | } 619 | else 620 | if( Hsb.x < 3.0f ) 621 | { 622 | DestRgb.g = 1.0f ; 623 | DestRgb.b = Hsb.x - 2.0f ; 624 | } 625 | else 626 | if( Hsb.x < 4.0f ) 627 | { 628 | DestRgb.g = 1.0f - ( Hsb.x - 3.0f ) ; 629 | DestRgb.b = 1.0f ; 630 | } 631 | else 632 | if( Hsb.x < 5.0f ) 633 | { 634 | DestRgb.r = Hsb.x - 4.0f ; 635 | DestRgb.b = 1.0f ; 636 | } 637 | else 638 | { 639 | DestRgb.r = 1.0f ; 640 | DestRgb.b = 1.0f - ( Hsb.x - 5.0f ) ; 641 | } 642 | 643 | DestRgb.rgb += ( Half.rgb - DestRgb.rgb ) * ( 1.0f - Hsb.y ); 644 | 645 | if( Hsb.z < 1.0f ) 646 | { 647 | DestRgb.rgb *= Hsb.z; 648 | } 649 | else 650 | { 651 | DestRgb.rgb += ( One.rgb - DestRgb.rgb ) * ( Hsb.z - 1.0f ); 652 | } 653 | 654 | Color.rgb = lerp( Color.rgb, DestRgb.rgb, BlendRatio * BlendColor.a ); 655 | 656 | return Color; 657 | } 658 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Hsi.fx: -------------------------------------------------------------------------------- 1 | float4 Param : register( c0 ) ; 2 | float3 Half : register( c1 ) ; 3 | float3 One : register( c2 ) ; 4 | sampler SrcTexture : register( s0 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 RGB_To_HSI_PS(VS_OUTPUT In) : COLOR 13 | { 14 | float4 Color; 15 | float3 Hsv; 16 | float3 Rgb; 17 | float Max; 18 | float Min; 19 | float Delta; 20 | 21 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 22 | Rgb = Color.rgb; 23 | 24 | if( Param.z > 0.0 ) 25 | { 26 | Rgb += ( One - Rgb ) * Param.z; 27 | } 28 | else 29 | { 30 | Rgb *= 1.0 + Param.z; 31 | } 32 | Rgb = saturate( Rgb ); 33 | 34 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 35 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 36 | Delta = Max - Min; 37 | 38 | Hsv.z = ( Max + Min ) / 2.0; 39 | if( Max == Min ) 40 | { 41 | Hsv.x = 0.0f; 42 | Hsv.y = 0.0f; 43 | } 44 | else 45 | { 46 | float3 tRGB; 47 | 48 | if( Hsv.z > 0.5 ) 49 | { 50 | Hsv.y = 2 - Max - Min; 51 | } 52 | else 53 | { 54 | Hsv.y = Max + Min; 55 | } 56 | Hsv.y = Delta / Hsv.y; 57 | 58 | tRGB = ( float3( Max, Max, Max ) - Rgb ) / Delta; 59 | if( Rgb.r == Max ) 60 | { 61 | Hsv.x = tRGB.b - tRGB.g; 62 | } 63 | else 64 | if( Rgb.g == Max ) 65 | { 66 | Hsv.x = 2.0 + tRGB.r - tRGB.b; 67 | } 68 | else 69 | { 70 | Hsv.x = 4.0 + tRGB.g - tRGB.r; 71 | } 72 | if( Hsv.x < 0.0 ) 73 | { 74 | Hsv.x += 6.0; 75 | } 76 | Hsv.x /= 6.0; 77 | } 78 | 79 | Color.r = Hsv.x; 80 | Color.g = Hsv.y; 81 | Color.b = Hsv.z; 82 | 83 | return Color; 84 | } 85 | 86 | float4 HSB_HLOCK_PS(VS_OUTPUT In) : COLOR 87 | { 88 | float4 Color; 89 | float3 Hsv; 90 | float3 Rgb; 91 | float Max; 92 | float Min; 93 | float Delta; 94 | 95 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 96 | Rgb = Color.rgb; 97 | 98 | if( Param.z > 0.0 ) 99 | { 100 | Rgb += ( One - Rgb ) * Param.z; 101 | } 102 | else 103 | { 104 | Rgb *= 1.0 + Param.z; 105 | } 106 | Rgb = saturate( Rgb ); 107 | 108 | Max = max( Rgb.r, max( Rgb.g, Rgb.b ) ); 109 | Min = min( Rgb.r, min( Rgb.g, Rgb.b ) ); 110 | Delta = Max - Min; 111 | 112 | Hsv.z = ( Max + Min ) / 2.0; 113 | if( Max == Min ) 114 | { 115 | Hsv.y = 0.0f; 116 | } 117 | else 118 | { 119 | float3 tRGB; 120 | 121 | if( Hsv.z > 0.5 ) 122 | { 123 | Hsv.y = 2 - Max - Min; 124 | } 125 | else 126 | { 127 | Hsv.y = Max + Min; 128 | } 129 | Hsv.y = Delta / Hsv.y; 130 | } 131 | 132 | Hsv.y = saturate( Hsv.y * ( 1.0 + Param.y ) ); 133 | 134 | if( Param.x < 1.0f ) 135 | { 136 | Rgb.r = 1.0f ; 137 | Rgb.g = Param.x ; 138 | Rgb.b = 0.0f ; 139 | } 140 | else 141 | if( Param.x < 2.0f ) 142 | { 143 | Rgb.r = 1.0f - ( Param.x - 1.0f ) ; 144 | Rgb.g = 1.0f ; 145 | Rgb.b = 0.0f ; 146 | } 147 | else 148 | if( Param.x < 3.0f ) 149 | { 150 | Rgb.r = 0.0f ; 151 | Rgb.g = 1.0f ; 152 | Rgb.b = Param.x - 2.0f ; 153 | } 154 | else 155 | if( Param.x < 4.0f ) 156 | { 157 | Rgb.r = 0.0f ; 158 | Rgb.g = 1.0f - ( Param.x - 3.0f ) ; 159 | Rgb.b = 1.0f ; 160 | } 161 | else 162 | if( Param.x < 5.0f ) 163 | { 164 | Rgb.r = Param.x - 4.0f ; 165 | Rgb.g = 0.0f ; 166 | Rgb.b = 1.0f ; 167 | } 168 | else 169 | { 170 | Rgb.r = 1.0f ; 171 | Rgb.g = 0.0f ; 172 | Rgb.b = 1.0f - ( Param.x - 5.0f ) ; 173 | } 174 | 175 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsv.y ); 176 | 177 | if( Hsv.z <= 0.5f ) 178 | { 179 | Rgb *= Hsv.z * 2.0f; 180 | } 181 | else 182 | { 183 | Rgb += ( One - Rgb ) * ( ( Hsv.z - 0.5f ) * 2.0f ); 184 | } 185 | 186 | Color.r = Rgb.r; 187 | Color.g = Rgb.g; 188 | Color.b = Rgb.b; 189 | 190 | return Color; 191 | } 192 | 193 | float4 HSI_To_RGB_PS(VS_OUTPUT In) : COLOR 194 | { 195 | float4 Color; 196 | float3 Hsv; 197 | float3 Rgb; 198 | float Max; 199 | float Min; 200 | float Delta; 201 | 202 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 203 | Hsv = Color.rgb; 204 | 205 | Hsv.x *= 6.0f; 206 | Hsv.x += Param.x; 207 | if( Hsv.x < 0.0f ) 208 | { 209 | Hsv.x += 6.0; 210 | } 211 | else 212 | if( Hsv.x >= 6.0f ) 213 | { 214 | Hsv.x -= 6.0; 215 | } 216 | 217 | Hsv.y = saturate( Hsv.y * ( 1.0 + Param.y ) ); 218 | 219 | if( Hsv.x < 1.0f ) 220 | { 221 | Rgb.r = 1.0f ; 222 | Rgb.g = Hsv.x ; 223 | Rgb.b = 0.0f ; 224 | } 225 | else 226 | if( Hsv.x < 2.0f ) 227 | { 228 | Rgb.r = 1.0f - ( Hsv.x - 1.0f ) ; 229 | Rgb.g = 1.0f ; 230 | Rgb.b = 0.0f ; 231 | } 232 | else 233 | if( Hsv.x < 3.0f ) 234 | { 235 | Rgb.r = 0.0f ; 236 | Rgb.g = 1.0f ; 237 | Rgb.b = Hsv.x - 2.0f ; 238 | } 239 | else 240 | if( Hsv.x < 4.0f ) 241 | { 242 | Rgb.r = 0.0f ; 243 | Rgb.g = 1.0f - ( Hsv.x - 3.0f ) ; 244 | Rgb.b = 1.0f ; 245 | } 246 | else 247 | if( Hsv.x < 5.0f ) 248 | { 249 | Rgb.r = Hsv.x - 4.0f ; 250 | Rgb.g = 0.0f ; 251 | Rgb.b = 1.0f ; 252 | } 253 | else 254 | { 255 | Rgb.r = 1.0f ; 256 | Rgb.g = 0.0f ; 257 | Rgb.b = 1.0f - ( Hsv.x - 5.0f ) ; 258 | } 259 | 260 | Rgb += ( Half - Rgb ) * ( 1.0f - Hsv.y ); 261 | 262 | if( Hsv.z <= 0.5f ) 263 | { 264 | Rgb *= Hsv.z * 2.0f; 265 | } 266 | else 267 | { 268 | Rgb += ( One - Rgb ) * ( ( Hsv.z - 0.5f ) * 2.0f ); 269 | } 270 | 271 | Color.r = Rgb.r; 272 | Color.g = Rgb.g; 273 | Color.b = Rgb.b; 274 | 275 | return Color; 276 | } 277 | 278 | 279 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Invert.fx: -------------------------------------------------------------------------------- 1 | sampler SrcTexture : register( s0 ) ; 2 | 3 | struct VS_OUTPUT 4 | { 5 | float4 Position : POSITION ; 6 | float2 TexCoords0 : TEXCOORD0 ; 7 | } ; 8 | 9 | float4 Invert_PS(VS_OUTPUT In) : COLOR 10 | { 11 | float4 Color; 12 | 13 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 14 | 15 | Color.rgb = float3(1,1,1) - Color.rgb; 16 | 17 | return Color; 18 | } 19 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Level.fx: -------------------------------------------------------------------------------- 1 | float4 Min_LenRev_AfterMin_AfterMax : register( c0 ) ; 2 | 3 | sampler SrcTexture : register( s0 ) ; 4 | sampler GammaTexture : register( s1 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 Level_PS(VS_OUTPUT In) : COLOR 13 | { 14 | float4 Color; 15 | float3 Rgb; 16 | float Ratio; 17 | 18 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 19 | 20 | Rgb.rgb = saturate( ( Color.rgb - Min_LenRev_AfterMin_AfterMax.xxx ) * Min_LenRev_AfterMin_AfterMax.y ); 21 | 22 | Ratio = tex2D( GammaTexture, float2( Rgb.r, 0.0 ) ).r ; 23 | Color.r = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 24 | 25 | Ratio = tex2D( GammaTexture, float2( Rgb.g, 0.0 ) ).r ; 26 | Color.g = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 27 | 28 | Ratio = tex2D( GammaTexture, float2( Rgb.b, 0.0 ) ).r ; 29 | Color.b = lerp( Min_LenRev_AfterMin_AfterMax.z, Min_LenRev_AfterMin_AfterMax.w, Ratio ); 30 | 31 | return Color; 32 | } 33 | 34 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/MV1PixelShaderDefault.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/MV1PixelShaderDefault.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/MV1PixelShaderDefault2.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/MV1PixelShaderDefault2.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/MV1VertexShaderDefault.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/MV1VertexShaderDefault.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/MV1VertexShaderDefault2.fx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Shader/Windows/Direct3D9/MV1VertexShaderDefault2.fx -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/Mono.fx: -------------------------------------------------------------------------------- 1 | float3 RGBToY : register( c0 ) ; 2 | float3 YCbCrToRGB : register( c1 ) ; 3 | 4 | sampler SrcTexture : register( s0 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 Mono_PS(VS_OUTPUT In) : COLOR 13 | { 14 | float4 Color; 15 | float3 Rgb; 16 | 17 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 18 | Rgb = Color.rgb; 19 | 20 | Rgb.rgb = dot( Rgb, RGBToY ); 21 | Color.rgb = Rgb + YCbCrToRGB; 22 | 23 | return Color; 24 | } 25 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/PremultipliedAlpha.fx: -------------------------------------------------------------------------------- 1 | sampler SrcTexture : register( s0 ) ; 2 | 3 | struct VS_OUTPUT 4 | { 5 | float4 Position : POSITION ; 6 | float2 TexCoords0 : TEXCOORD0 ; 7 | } ; 8 | 9 | float4 PremultipliedAlpha_PS(VS_OUTPUT In) : COLOR 10 | { 11 | float4 Color; 12 | 13 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 14 | 15 | Color.rgb = Color.rgb * Color.a; 16 | 17 | return Color; 18 | } 19 | 20 | float4 InterpolatedAlpha_PS(VS_OUTPUT In) : COLOR 21 | { 22 | float4 Color; 23 | 24 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 25 | 26 | if( Color.a < 0.001f ) 27 | { 28 | Color.r = 0.0f ; 29 | Color.g = 0.0f ; 30 | Color.b = 0.0f ; 31 | } 32 | else 33 | { 34 | Color.rgb = Color.rgb / Color.a; 35 | } 36 | 37 | return Color; 38 | } 39 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/TwoColor.fx: -------------------------------------------------------------------------------- 1 | float4 RGBToY_Cmp : register( c0 ) ; 2 | float4 LowColor : register( c1 ) ; 3 | float4 HighColor : register( c2 ) ; 4 | 5 | sampler SrcTexture : register( s0 ) ; 6 | 7 | struct VS_OUTPUT 8 | { 9 | float4 Position : POSITION ; 10 | float2 TexCoords0 : TEXCOORD0 ; 11 | } ; 12 | 13 | float4 TwoColor_PS(VS_OUTPUT In) : COLOR 14 | { 15 | float4 Color; 16 | 17 | Color = tex2D( SrcTexture, In.TexCoords0 ) ; 18 | 19 | if( dot( Color.rgb, RGBToY_Cmp.rgb ) > RGBToY_Cmp.w ) 20 | { 21 | Color = HighColor; 22 | } 23 | else 24 | { 25 | Color = LowColor; 26 | } 27 | 28 | return Color; 29 | } 30 | -------------------------------------------------------------------------------- /source/Shader/Windows/Direct3D9/YuvToRgb.fx: -------------------------------------------------------------------------------- 1 | float4 UVTextureCoordScale_RRA_Add_U : register( c0 ) ; 2 | 3 | sampler SrcTexture : register( s0 ) ; 4 | sampler UVTexture : register( s1 ) ; 5 | 6 | struct VS_OUTPUT 7 | { 8 | float4 Position : POSITION ; 9 | float2 TexCoords0 : TEXCOORD0 ; 10 | } ; 11 | 12 | float4 Y2UV2toRGB_PS(VS_OUTPUT In) : COLOR 13 | { 14 | float4 DestColor ; 15 | float4 YUVColor ; 16 | 17 | YUVColor = tex2D( SrcTexture, In.TexCoords0 ) ; 18 | 19 | DestColor.r = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 1.596f * ( YUVColor.b - 0.5f ) ) ; 20 | DestColor.g = saturate( 1.164f * ( YUVColor.r - 0.0625f ) - 0.391f * ( YUVColor.g - 0.5f ) - 0.813f * ( YUVColor.b - 0.5f ) ) ; 21 | DestColor.b = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 2.018f * ( YUVColor.g - 0.5f ) ) ; 22 | DestColor.a = 1.0f ; 23 | 24 | return DestColor ; 25 | } 26 | 27 | float4 Y2UV2toRGB_RRA_PS(VS_OUTPUT In) : COLOR 28 | { 29 | float4 DestColor ; 30 | float4 YUVColor ; 31 | float4 A_YUVColor ; 32 | float2 A_TexCoords ; 33 | 34 | YUVColor = tex2D( SrcTexture, In.TexCoords0 ) ; 35 | 36 | A_TexCoords = In.TexCoords0 ; 37 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.z ; 38 | A_YUVColor = tex2D( SrcTexture, A_TexCoords ) ; 39 | 40 | DestColor.r = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 1.596f * ( YUVColor.b - 0.5f ) ) ; 41 | DestColor.g = saturate( 1.164f * ( YUVColor.r - 0.0625f ) - 0.391f * ( YUVColor.g - 0.5f ) - 0.813f * ( YUVColor.b - 0.5f ) ) ; 42 | DestColor.b = saturate( 1.164f * ( YUVColor.r - 0.0625f ) + 2.018f * ( YUVColor.g - 0.5f ) ) ; 43 | DestColor.a = saturate( 1.164f * ( A_YUVColor.r - 0.0625f ) + 1.596f * ( A_YUVColor.b - 0.5f ) ) ; 44 | 45 | return DestColor ; 46 | } 47 | 48 | float4 Y2UV1toRGB_PS(VS_OUTPUT In) : COLOR 49 | { 50 | float4 DestColor ; 51 | float4 YColor ; 52 | float4 UVColor ; 53 | float2 UVTexCoord ; 54 | 55 | YColor = tex2D( SrcTexture, In.TexCoords0 ) ; 56 | UVTexCoord = In.TexCoords0 ; 57 | UVTexCoord.x *= UVTextureCoordScale_RRA_Add_U.x ; 58 | UVTexCoord.y *= UVTextureCoordScale_RRA_Add_U.y ; 59 | UVColor = tex2D( UVTexture, UVTexCoord ) ; 60 | 61 | DestColor.r = saturate( 1.164f * ( YColor.r - 0.0625f ) + 1.596f * ( UVColor.a - 0.5f ) ) ; 62 | DestColor.g = saturate( 1.164f * ( YColor.r - 0.0625f ) - 0.391f * ( UVColor.r - 0.5f ) - 0.813f * ( UVColor.a - 0.5f ) ) ; 63 | DestColor.b = saturate( 1.164f * ( YColor.r - 0.0625f ) + 2.018f * ( UVColor.r - 0.5f ) ) ; 64 | DestColor.a = 1.0f ; 65 | 66 | return DestColor ; 67 | } 68 | 69 | float4 Y2UV1toRGB_RRA_PS(VS_OUTPUT In) : COLOR 70 | { 71 | float4 DestColor ; 72 | float4 YColor ; 73 | float4 UVColor ; 74 | float2 UVTexCoord ; 75 | float4 A_YColor ; 76 | float4 A_UVColor ; 77 | float2 A_TexCoords ; 78 | 79 | YColor = tex2D( SrcTexture, In.TexCoords0 ) ; 80 | UVTexCoord = In.TexCoords0 ; 81 | UVTexCoord.x *= UVTextureCoordScale_RRA_Add_U.x ; 82 | UVTexCoord.y *= UVTextureCoordScale_RRA_Add_U.y ; 83 | UVColor = tex2D( UVTexture, UVTexCoord ) ; 84 | 85 | A_TexCoords = In.TexCoords0 ; 86 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.z ; 87 | A_YColor = tex2D( SrcTexture, A_TexCoords ) ; 88 | A_TexCoords = In.TexCoords0 ; 89 | A_TexCoords.x *= UVTextureCoordScale_RRA_Add_U.x ; 90 | A_TexCoords.y *= UVTextureCoordScale_RRA_Add_U.y ; 91 | A_TexCoords.x += UVTextureCoordScale_RRA_Add_U.w ; 92 | A_UVColor = tex2D( UVTexture, A_TexCoords ) ; 93 | 94 | DestColor.r = saturate( 1.164f * ( YColor.r - 0.0625f ) + 1.596f * ( UVColor.a - 0.5f ) ) ; 95 | DestColor.g = saturate( 1.164f * ( YColor.r - 0.0625f ) - 0.391f * ( UVColor.r - 0.5f ) - 0.813f * ( UVColor.a - 0.5f ) ) ; 96 | DestColor.b = saturate( 1.164f * ( YColor.r - 0.0625f ) + 2.018f * ( UVColor.r - 0.5f ) ) ; 97 | DestColor.a = saturate( 1.164f * ( A_YColor.r - 0.0625f ) + 1.596f * ( A_UVColor.a - 0.5f ) ) ; 98 | 99 | return DestColor ; 100 | } 101 | -------------------------------------------------------------------------------- /source/Tool/FileLib.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Tool/FileLib.cpp -------------------------------------------------------------------------------- /source/Tool/FileLib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Tool/FileLib.h -------------------------------------------------------------------------------- /source/Tool/bullet_rename.cpp: -------------------------------------------------------------------------------- 1 | #include "FileLib.h" 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | int btNameNum ; 8 | char btNameList[ 10000 ][ 128 ] ; 9 | char DestBuffer[ 1024 * 1024 ] ; 10 | 11 | void Rename( FILE_INFOLIST *FInfoList, bool FileRename ) 12 | { 13 | FILE_INFO *FInfo ; 14 | int i ; 15 | int j ; 16 | int k ; 17 | int l ; 18 | unsigned char *FileImage ; 19 | int FileSize ; 20 | unsigned char *data ; 21 | unsigned char *dest ; 22 | char FileName[ 1024 ] ; 23 | char Name[ 4096 ] ; 24 | 25 | FInfo = FInfoList->List ; 26 | for( i = 0 ; i < FInfoList->Num ; i ++, FInfo ++ ) 27 | { 28 | sprintf( FileName, "%s%s", FInfo->AbsDirectoryPath, FInfo->FileName ) ; 29 | LoadFileMem( FileName, ( void ** )&FileImage, &FileSize ) ; 30 | 31 | memset( DestBuffer, 0, sizeof( DestBuffer ) ) ; 32 | 33 | dest = ( unsigned char * )DestBuffer ; 34 | data = FileImage ; 35 | j = 0 ; 36 | for(;;) 37 | { 38 | if( ( data[ 0 ] >= 'a' && data[ 0 ] <= 'z' ) || 39 | ( data[ 0 ] >= 'A' && data[ 0 ] <= 'Z' ) || 40 | data[ 0 ] == '_' ) 41 | { 42 | for( k = 0 ; ; ) 43 | { 44 | if( ( data[ 0 ] < 'a' || data[ 0 ] > 'z' ) && 45 | ( data[ 0 ] < 'A' || data[ 0 ] > 'Z' ) && 46 | ( data[ 0 ] < '0' || data[ 0 ] > '9' ) && 47 | data[ 0 ] != '_' ) 48 | { 49 | break ; 50 | } 51 | else 52 | { 53 | Name[ k ] = data[ 0 ] ; 54 | k ++ ; 55 | 56 | j ++ ; 57 | data ++ ; 58 | if( j == FileSize ) 59 | { 60 | break ; 61 | } 62 | } 63 | } 64 | 65 | Name[ k ] = '\0' ; 66 | if( j + 3 > FileSize || data[ 0 ] != '.' || data[ 1 ] != 'h' || data[ 2 ] != '\"' ) 67 | { 68 | for( l = 0 ; l < btNameNum && strcmp( Name, btNameList[ l ] ) != 0 ; l ++ ){} 69 | if( l != btNameNum ) 70 | { 71 | dest[ 0 ] = 'D' ; 72 | dest[ 1 ] = '_' ; 73 | dest += 2 ; 74 | } 75 | } 76 | strcpy( ( char * )dest, Name ) ; 77 | dest += k ; 78 | 79 | if( j == FileSize ) 80 | { 81 | break ; 82 | } 83 | } 84 | else 85 | { 86 | dest[ 0 ] = data[ 0 ] ; 87 | dest ++ ; 88 | 89 | j ++ ; 90 | data ++ ; 91 | if( j == FileSize ) 92 | { 93 | break ; 94 | } 95 | } 96 | } 97 | 98 | if( FileRename ) 99 | { 100 | sprintf( FileName, "%sD_%s", FInfo->AbsDirectoryPath, FInfo->FileName ) ; 101 | } 102 | SaveFileMem( FileName, DestBuffer, ( char * )dest - DestBuffer ) ; 103 | 104 | free( FileImage ) ; 105 | } 106 | } 107 | 108 | void RenameMain( const char *Path ) 109 | { 110 | FILE_INFOLIST FInfoList ; 111 | FILE_INFO *FInfo ; 112 | int i ; 113 | int j ; 114 | int k ; 115 | unsigned char *FileImage ; 116 | int FileSize ; 117 | unsigned char *data ; 118 | unsigned char *start ; 119 | char FileName[ 1024 ] ; 120 | char Name[ 4096 ] ; 121 | bool EnumFlag ; 122 | bool TypedefFlag ; 123 | bool TypedefEndFlag ; 124 | unsigned char LastChar ; 125 | 126 | CreateFileList( Path, &FInfoList, 1, 1, 0, 0, "h;cpp" ) ; 127 | 128 | FInfo = FInfoList.List ; 129 | for( i = 0 ; i < FInfoList.Num ; i ++, FInfo ++ ) 130 | { 131 | sprintf( FileName, "%s%s", FInfo->AbsDirectoryPath, FInfo->FileName ) ; 132 | LoadFileMem( FileName, ( void ** )&FileImage, &FileSize ) ; 133 | 134 | EnumFlag = false ; 135 | TypedefFlag = false ; 136 | 137 | data = FileImage ; 138 | j = 0 ; 139 | for(;;) 140 | { 141 | if( data[ 0 ] == '/' && data[ 1 ] == '/' ) 142 | { 143 | data += 2 ; 144 | j += 2 ; 145 | while( j < FileSize && data[ 0 ] != '\n' ) 146 | { 147 | data ++ ; 148 | j ++ ; 149 | } 150 | data ++ ; 151 | j ++ ; 152 | if( j >= FileSize ) 153 | { 154 | break ; 155 | } 156 | } 157 | else 158 | if( ( data[ 0 ] >= 'a' && data[ 0 ] <= 'z' ) || 159 | ( data[ 0 ] >= 'A' && data[ 0 ] <= 'Z' ) || 160 | data[ 0 ] == '_' ) 161 | { 162 | start = data ; 163 | for( k = 0 ; ; ) 164 | { 165 | if( ( data[ 0 ] < 'a' || data[ 0 ] > 'z' ) && 166 | ( data[ 0 ] < 'A' || data[ 0 ] > 'Z' ) && 167 | ( data[ 0 ] < '0' || data[ 0 ] > '9' ) && 168 | data[ 0 ] != '_' ) 169 | { 170 | break ; 171 | } 172 | else 173 | { 174 | Name[ k ] = data[ 0 ] ; 175 | k ++ ; 176 | 177 | j ++ ; 178 | data ++ ; 179 | if( j == FileSize ) 180 | { 181 | break ; 182 | } 183 | } 184 | } 185 | 186 | Name[ k ] = '\0' ; 187 | if( ( Name[ 0 ] != 'i' || Name[ 1 ] != 'n' || Name[ 2 ] != 't' || Name[ 3 ] != '\0' ) && 188 | strncmp( "DWORD", Name, strlen( "DWORD" ) ) != 0 && 189 | strncmp( "for", Name, strlen( "for" ) ) != 0 && 190 | strncmp( "printf", Name, strlen( "printf" ) ) != 0 && 191 | strncmp( "using", Name, strlen( "using" ) ) != 0 && 192 | ( 193 | ( TypedefEndFlag && data[ 0 ] == ';' && start[ -3 ] == '\n' && start[ -2 ] == '}' && start[ -1 ] == ' ' ) || 194 | ( TypedefFlag && data[ 0 ] == ';' ) || 195 | ( TypedefFlag && ( data[ 0 ] == '[' && data[ 1 ] >= '0' && data[ 1 ] <= '9' && data[ 2 ] == ']' && data[ 3 ] == ';' ) ) || 196 | ( TypedefFlag && ( data[ 0 ] == '[' && data[ 1 ] >= '0' && data[ 1 ] <= '9' && data[ 2 ] >= '0' && data[ 2 ] <= '9' && data[ 3 ] == ']' && data[ 4 ] == ';' ) ) || 197 | ( TypedefFlag && ( data[ 0 ] == '[' && data[ 1 ] >= '0' && data[ 1 ] <= '9' && data[ 2 ] == ']' && data[ 3 ] == '[' && data[ 4 ] >= '0' && data[ 4 ] <= '9' && data[ 5 ] == ']' && data[ 6 ] == ';' ) ) || 198 | ( EnumFlag && ( LastChar == '{' || LastChar == ',' ) ) || 199 | ( 200 | ( j >= 8 && strncmp( "#define ", ( char * )&start[ -8 ], 8 ) == 0 && data[ 1 ] != '\r' && data[ 0 ] != '\r' ) || 201 | ( j >= 6 && strncmp( "class ", ( char * )&start[ -6 ], 6 ) == 0 ) || 202 | ( j >= 6 && strncmp( "class\t", ( char * )&start[ -6 ], 6 ) == 0 ) || 203 | ( j >= 5 && strncmp( "enum\t", ( char * )&start[ -5 ], 5 ) == 0 ) || 204 | ( j >= 5 && strncmp( "enum ", ( char * )&start[ -5 ], 5 ) == 0 ) || 205 | ( j >= 7 && strncmp( "struct ", ( char * )&start[ -7 ], 7 ) == 0 ) || 206 | ( j >= 9 && strncmp( "(struct) ", ( char * )&start[ -9 ], 9 ) == 0 ) || 207 | ( j >= 1 && strncmp( "typedef", Name, strlen( "typedef" ) ) == 0 && start[ -1 ] == '\n' ) || 208 | ( j >= 2 && strncmp( "typedef", Name, strlen( "typedef" ) ) == 0 && start[ -2 ] == '\r' && start[ -1 ] == '\n' ) || 209 | ( j >= 3 && strncmp( "typedef", Name, strlen( "typedef" ) ) == 0 && start[ -3 ] == '\r' && start[ -2 ] == '\n' && start[ -1 ] == '\t' ) || 210 | ( j >= 6 && strncmp( "typedef", Name, strlen( "typedef" ) ) == 0 && start[ -6 ] == '\r' && start[ -5 ] == '\n' && start[ -4 ] == ' ' && start[ -3 ] == ' ' && start[ -2 ] == ' ' && start[ -1 ] == ' ' ) || 211 | ( Name[ 0 ] == 'b' && Name[ 1 ] == 't' && Name[ 2 ] >= 'A' && Name[ 2 ] <= 'Z' ) || 212 | ( Name[ 0 ] == 'g' && Name[ 1 ] >= 'A' && Name[ 1 ] <= 'Z' ) || 213 | ( Name[ 0 ] == 'd' && Name[ 1 ] >= 'A' && Name[ 1 ] <= 'Z' ) || 214 | ( Name[ 0 ] == 't' && Name[ 1 ] >= 'A' && Name[ 1 ] <= 'Z' ) || 215 | ( Name[ 0 ] == 's' && Name[ 1 ] >= 'A' && Name[ 1 ] <= 'Z' ) || 216 | ( Name[ 0 ] == 'p' && Name[ 1 ] == 'l' && Name[ 2 ] >= 'A' && Name[ 2 ] <= 'Z' ) || 217 | ( Name[ 0 ] == 'g' && Name[ 1 ] == 'i' && Name[ 2 ] == 'm' && Name[ 3 ] == '_' ) || 218 | ( Name[ 0 ] == 'G' && Name[ 1 ] == 'I' && Name[ 2 ] == 'M' && Name[ 3 ] == '_' ) || 219 | ( Name[ 0 ] == 'G' && Name[ 1 ] == 'E' && Name[ 2 ] == 'N' && Name[ 3 ] == '_' ) || 220 | ( Name[ 0 ] == 'B' && Name[ 1 ] == 'T' && Name[ 2 ] == '_' ) || 221 | strncmp( "SphereTriangleDetector", Name, strlen( "SphereTriangleDetector" ) ) == 0 || 222 | strncmp( "SequentialThreadFunc", Name, strlen( "SequentialThreadFunc" ) ) == 0 || 223 | strncmp( "SequentiallsMemorySetupFunc", Name, strlen( "SequentiallsMemorySetupFunc" ) ) == 0 || 224 | strncmp( "Win32ThreadFunc", Name, strlen( "Win32ThreadFunc" ) ) == 0 || 225 | strncmp( "Win32lsMemorySetupFunc", Name, strlen( "Win32lsMemorySetupFunc" ) ) == 0 || 226 | strncmp( "PosixThreadFunc", Name, strlen( "PosixThreadFunc" ) ) == 0 || 227 | strncmp( "PosixlsMemorySetupFunc", Name, strlen( "PosixlsMemorySetupFunc" ) ) == 0 || 228 | strncmp( "disableCcd", Name, strlen( "disableCcd" ) ) == 0 || 229 | strncmp( "cullPoints2", Name, strlen( "cullPoints2" ) ) == 0 || 230 | strncmp( "addr64", Name, strlen( "addr64" ) ) == 0 || 231 | strncmp( "ContactAddedCallback", Name, strlen( "ContactAddedCallback" ) ) == 0 || 232 | strncmp( "ContactDestroyedCallback", Name, strlen( "ContactDestroyedCallback" ) ) == 0 || 233 | strncmp( "ContactProcessedCallback", Name, strlen( "ContactProcessedCallback" ) ) == 0 || 234 | strncmp( "gjkepa2_impl", Name, strlen( "gjkepa2_impl" ) ) == 0 || 235 | strncmp( "Vectormath", Name, strlen( "Vectormath" ) ) == 0 || 236 | strncmp( "Aos", Name, strlen( "Aos" ) ) == 0 || 237 | strncmp( "enum\r\n", ( char * )start, strlen( "enum\r\n" ) ) == 0 || 238 | strncmp( "maxIterations", Name, strlen( "maxIterations" ) ) == 0 239 | ) 240 | ) 241 | ) 242 | { 243 | if( ( j >= 5 && ( strncmp( "enum ", ( char * )&start[ -5 ], 5 ) == 0 || strncmp( "enum\t", ( char * )&start[ -5 ], 5 ) == 0 ) ) || 244 | strncmp( "enum\r\n", ( char * )start, strlen( "enum\r\n" ) ) == 0 ) 245 | { 246 | EnumFlag = true ; 247 | } 248 | 249 | if( strncmp( "typedef", Name, strlen( "typedef" ) ) == 0 ) 250 | { 251 | TypedefFlag = true ; 252 | } 253 | 254 | if( ( Name[ 0 ] != 'D' || Name[ 1 ] != '_' ) && 255 | strncmp( "enum\r\n", ( char * )start, strlen( "enum\r\n" ) ) != 0 && 256 | strncmp( "typedef", Name, strlen( "typedef" ) ) != 0 ) 257 | { 258 | for( k = 0 ; k < btNameNum && strcmp( Name, btNameList[ k ] ) != 0 ; k ++ ){} 259 | if( k == btNameNum ) 260 | { 261 | strcpy( btNameList[ btNameNum ], Name ) ; 262 | btNameNum ++ ; 263 | } 264 | } 265 | } 266 | 267 | if( j == FileSize ) 268 | { 269 | break ; 270 | } 271 | } 272 | else 273 | { 274 | if( TypedefFlag && ( data[ 0 ] == ';' || data[ 0 ] == '\n' ) ) 275 | { 276 | TypedefFlag = false ; 277 | if( data[ 0 ] == '\n' ) 278 | { 279 | TypedefEndFlag = true ; 280 | } 281 | } 282 | if( EnumFlag && data[ 0 ] == '}' ) 283 | { 284 | EnumFlag = false ; 285 | } 286 | if( data[ 0 ] != ' ' && data[ 0 ] != '\t' && data[ 0 ] != '\r' && data[ 0 ] != '\n' ) 287 | { 288 | LastChar = data[ 0 ] ; 289 | } 290 | 291 | j ++ ; 292 | data ++ ; 293 | if( j == FileSize ) 294 | { 295 | break ; 296 | } 297 | } 298 | } 299 | 300 | free( FileImage ) ; 301 | } 302 | 303 | Rename( &FInfoList, false ) ; 304 | } 305 | 306 | int main( int argc, char **argv ) 307 | { 308 | printf( "Bullet Physics Version 2.75 Rename\n" ) ; 309 | if( argc != 2 ) 310 | { 311 | printf( "bullet_rename.exe BulletPhysicsSrcFolderPath\n" ) ; 312 | return -1 ; 313 | } 314 | 315 | RenameMain( argv[ 1 ] ) ; 316 | 317 | return 0 ; 318 | } 319 | -------------------------------------------------------------------------------- /source/Windows/DxBaseFuncWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxBaseFuncWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxBaseFuncWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxBaseFuncWin.h -------------------------------------------------------------------------------- /source/Windows/DxBaseImageWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxBaseImageWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxBaseImageWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxBaseImageWin.h -------------------------------------------------------------------------------- /source/Windows/DxDirectX.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxDirectX.h -------------------------------------------------------------------------------- /source/Windows/DxFileWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxFileWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxFileWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxFileWin.h -------------------------------------------------------------------------------- /source/Windows/DxFontWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxFontWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxFontWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxFontWin.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsAPIWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsAPIWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsAPIWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsAPIWin.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsD3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsD3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsD3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsD3D11.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsD3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsD3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsD3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsD3D9.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterD3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterD3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterD3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterD3D11.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterD3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterD3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterD3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterD3D9.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsFilterWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsFilterWin.h -------------------------------------------------------------------------------- /source/Windows/DxGraphicsWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxGraphicsWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGraphicsWin.h -------------------------------------------------------------------------------- /source/Windows/DxGuid.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGuid.cpp -------------------------------------------------------------------------------- /source/Windows/DxGuid.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxGuid.h -------------------------------------------------------------------------------- /source/Windows/DxInputWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxInputWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxInputWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxInputWin.h -------------------------------------------------------------------------------- /source/Windows/DxKeyHook.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxKeyHook.c -------------------------------------------------------------------------------- /source/Windows/DxKeyHookBinary.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxKeyHookBinary.cpp -------------------------------------------------------------------------------- /source/Windows/DxLogWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxLogWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxLogWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxLogWin.h -------------------------------------------------------------------------------- /source/Windows/DxMaskD3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskD3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxMaskD3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskD3D11.h -------------------------------------------------------------------------------- /source/Windows/DxMaskD3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskD3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxMaskD3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskD3D9.h -------------------------------------------------------------------------------- /source/Windows/DxMaskWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxMaskWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMaskWin.h -------------------------------------------------------------------------------- /source/Windows/DxMemoryWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMemoryWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxMemoryWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMemoryWin.h -------------------------------------------------------------------------------- /source/Windows/DxModelD3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelD3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxModelD3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelD3D11.h -------------------------------------------------------------------------------- /source/Windows/DxModelD3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelD3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxModelD3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelD3D9.h -------------------------------------------------------------------------------- /source/Windows/DxModelWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxModelWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxModelWin.h -------------------------------------------------------------------------------- /source/Windows/DxMovieWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMovieWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxMovieWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxMovieWin.h -------------------------------------------------------------------------------- /source/Windows/DxNetworkWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxNetworkWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxNetworkWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxNetworkWin.h -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Base3D_D3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Base3D_D3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Base_D3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Base_D3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Base_D3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Base_D3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Filter_D3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Filter_D3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Filter_D3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Filter_D3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Model_D3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Model_D3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_Model_D3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_Model_D3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_RgbaMix_D3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_RgbaMix_D3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxShaderCodeBin_RgbaMix_D3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShaderCodeBin_RgbaMix_D3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxShader_Common_D3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_Common_D3D11.h -------------------------------------------------------------------------------- /source/Windows/DxShader_DataType_D3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_DataType_D3D11.h -------------------------------------------------------------------------------- /source/Windows/DxShader_PS_D3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_PS_D3D11.h -------------------------------------------------------------------------------- /source/Windows/DxShader_PS_D3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_PS_D3D9.h -------------------------------------------------------------------------------- /source/Windows/DxShader_VS_D3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_VS_D3D11.h -------------------------------------------------------------------------------- /source/Windows/DxShader_VS_D3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxShader_VS_D3D9.h -------------------------------------------------------------------------------- /source/Windows/DxSoundConvertWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSoundConvertWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxSoundConvertWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSoundConvertWin.h -------------------------------------------------------------------------------- /source/Windows/DxSoundWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSoundWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxSoundWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSoundWin.h -------------------------------------------------------------------------------- /source/Windows/DxSystemWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSystemWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxSystemWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxSystemWin.h -------------------------------------------------------------------------------- /source/Windows/DxThreadWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxThreadWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxThreadWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxThreadWin.h -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggD3D11.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggD3D11.cpp -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggD3D11.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggD3D11.h -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggD3D9.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggD3D9.cpp -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggD3D9.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggD3D9.h -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggWin.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggWin.cpp -------------------------------------------------------------------------------- /source/Windows/DxUseCLibOggWin.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCLibOggWin.h -------------------------------------------------------------------------------- /source/Windows/DxUseCStrmBaseFilter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCStrmBaseFilter.cpp -------------------------------------------------------------------------------- /source/Windows/DxUseCStrmBaseFilter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxUseCStrmBaseFilter.h -------------------------------------------------------------------------------- /source/Windows/DxWinAPI.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxWinAPI.cpp -------------------------------------------------------------------------------- /source/Windows/DxWinAPI.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxWinAPI.h -------------------------------------------------------------------------------- /source/Windows/DxWindow.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxWindow.cpp -------------------------------------------------------------------------------- /source/Windows/DxWindow.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/Windows/DxWindow.h -------------------------------------------------------------------------------- /source/DXライブラリソースファイル概用.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/yumetodo/DxLib/c70a253bb05380e62ddd851d09a5657dfcec228e/source/DXライブラリソースファイル概用.txt --------------------------------------------------------------------------------