Implement texture atlas, details on why it works unclear
This commit is contained in:
+15
-6
@@ -10,7 +10,6 @@ import Shader
|
||||
import Shader.Data
|
||||
import Shader.Compile
|
||||
import Shader.AuxAddition
|
||||
import Geometry.Data
|
||||
import Data.Preload.Render
|
||||
|
||||
import Graphics.Rendering.OpenGL hiding (Point,translate,scale,imageHeight)
|
||||
@@ -54,8 +53,12 @@ preloadRender = do
|
||||
>>= addTexture "data/texture/grayscaleDirt.png"
|
||||
|
||||
---- texture shader
|
||||
-- textShad <- makeShader "texture/simpleWorld" [vert,frag] [(0,3),(1,2)] Triangles poke32
|
||||
-- >>= addTexture "data/texture/ayene_wooden_floor.png"
|
||||
textShad <- makeShader "texture/simpleWorld" [vert,frag] [3,2] Triangles poke32
|
||||
>>= addTexture "data/texture/ayene_wooden_floor.png"
|
||||
|
||||
---- texture array shader
|
||||
textArrayShad <- makeShader "texture/array" [vert,frag] [3,3] Triangles poke33
|
||||
>>= addTextureArray "data/texture/ayene_wooden_floor.png"
|
||||
|
||||
-- framebuffer for lighting
|
||||
(fbo,fboTO,fboRBO) <- setupFramebufferWithStencil
|
||||
@@ -70,7 +73,8 @@ preloadRender = do
|
||||
, _lightingWallShader = wlLightShad
|
||||
, _wallBlankShader = wlBlank
|
||||
, _wallTextureShader = wlTexture
|
||||
--, _textureShader = textShad
|
||||
, _textureShader = textShad
|
||||
, _textureArrayShader = textArrayShad
|
||||
, _backgroundShader = bgShad
|
||||
, _fullscreenShader = fsShad
|
||||
, _boxBlurShader = boxBlurShad
|
||||
@@ -195,8 +199,13 @@ pokeWPColStrat :: RenderType -> [[Float]]
|
||||
pokeWPColStrat Render22x4{_unRender22x4=(((x,y),(z,w)),(r,g,b,a))} = [[x,y,z,w,r,g,b,a]]
|
||||
pokeWPColStrat _ = undefined
|
||||
|
||||
poke32 :: (Point3,Point2) -> [[Float]]
|
||||
poke32 ((x,y,z),(a,b)) = [[x,y,z,a,b]]
|
||||
poke32 :: RenderType -> [[Float]]
|
||||
poke32 Render3x2{_unRender3x2=((x,y,z),(a,b))} = [[x,y,z,a,b]]
|
||||
poke32 _ = undefined
|
||||
|
||||
poke33 :: RenderType -> [[Float]]
|
||||
poke33 Render3x3{_unRender3x3=((x,y,z),(a,b,c))} = [[x,y,z,a,b,c]]
|
||||
poke33 _ = undefined
|
||||
|
||||
pokeBGStrat :: a -> [[Float]]
|
||||
pokeBGStrat = const []
|
||||
|
||||
Reference in New Issue
Block a user