Skip to content

Commit

Permalink
[GL] no longer transposed M33*s
Browse files Browse the repository at this point in the history
- added some default FShade-uniforms
  • Loading branch information
krauthaufen committed Jun 8, 2016
1 parent a7ec9cf commit 163b79e
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 42 deletions.
22 changes: 22 additions & 0 deletions src/Aardvark.Base.Rendering/FShade.fs
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,28 @@ module FShadeInterop =
member x.ViewportSize : V2i = x?PerView?ViewportSize


member x.DiffuseColor : V4d = x?PerMaterial?DiffuseColor
member x.AmbientColor : V4d = x?PerMaterial?DiffuseColor
member x.EmissiveColor : V4d = x?PerMaterial?EmissiveColor
member x.SpecularColor : V4d = x?PerMaterial?SpecularColor
member x.Shininess : float = x?PerMaterial?Shininess

member x.DiffuseColorTexture : ShaderTextureHandle = x?DiffuseColorTexture
member x.AmbientColorTexture : ShaderTextureHandle = x?AmbientColorTexture
member x.EmissiveColorTexture : ShaderTextureHandle = x?EmissiveColorTexture
member x.SpecularColorTexture : ShaderTextureHandle = x?SpecularColorTexture
member x.ShininessTexture : ShaderTextureHandle = x?HasShininessTexture
member x.LightMapTexture : ShaderTextureHandle = x?LightMapTexture
member x.NormalMapTexture : ShaderTextureHandle = x?NormalMapTexture

member x.HasDiffuseColorTexture : bool = x?PerMaterial?HasDiffuseColorTexture
member x.HasAmbientColorTexture : bool = x?PerMaterial?HasAmbientColorTexture
member x.HasEmissiveColorTexture : bool = x?PerMaterial?HasEmissiveColorTexture
member x.HasSpecularColorTexture : bool = x?PerMaterial?HasSpecularColorTexture
member x.HasShininessTexture : bool = x?PerMaterial?HasShininessTexture
member x.HasLightMapTexture : bool = x?PerMaterial?HasLightMapTexture
member x.HasNormalMapTexture : bool = x?PerMaterial?HasNormalMapTexture


let private backendSurfaceCache = ConcurrentDictionary<string, BackendSurface>()

Expand Down
80 changes: 40 additions & 40 deletions src/Aardvark.Rendering.GL/Core/PrimitiveValueConverter.fs
Original file line number Diff line number Diff line change
Expand Up @@ -524,48 +524,48 @@ module PrimitiveValueConverter =
( fun (v : M33l) -> M44d.op_Explicit v ) :> obj

// M33f -> other matrices
( fun (v : M33f) -> M22i.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M22l.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M22f.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M22d.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M23i.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M23l.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M23f.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M23d.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M33i.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M33l.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> v.Transposed ) :> obj
( fun (v : M33f) -> M33d.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M34i.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M34l.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M34f.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M34d.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M44i.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M44l.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M44f.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M44d.op_Explicit v.Transposed ) :> obj
( fun (v : M33f) -> M22i.op_Explicit v ) :> obj
( fun (v : M33f) -> M22l.op_Explicit v ) :> obj
( fun (v : M33f) -> M22f.op_Explicit v ) :> obj
( fun (v : M33f) -> M22d.op_Explicit v ) :> obj
( fun (v : M33f) -> M23i.op_Explicit v ) :> obj
( fun (v : M33f) -> M23l.op_Explicit v ) :> obj
( fun (v : M33f) -> M23f.op_Explicit v ) :> obj
( fun (v : M33f) -> M23d.op_Explicit v ) :> obj
( fun (v : M33f) -> M33i.op_Explicit v ) :> obj
( fun (v : M33f) -> M33l.op_Explicit v ) :> obj
( fun (v : M33f) -> v ) :> obj
( fun (v : M33f) -> M33d.op_Explicit v ) :> obj
( fun (v : M33f) -> M34i.op_Explicit v ) :> obj
( fun (v : M33f) -> M34l.op_Explicit v ) :> obj
( fun (v : M33f) -> M34f.op_Explicit v ) :> obj
( fun (v : M33f) -> M34d.op_Explicit v ) :> obj
( fun (v : M33f) -> M44i.op_Explicit v ) :> obj
( fun (v : M33f) -> M44l.op_Explicit v ) :> obj
( fun (v : M33f) -> M44f.op_Explicit v ) :> obj
( fun (v : M33f) -> M44d.op_Explicit v ) :> obj

// M33d -> other matrices
( fun (v : M33d) -> M22i.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M22l.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M22f.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M22d.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M23i.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M23l.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M23f.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M23d.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M33i.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M33l.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M33f.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> v.Transposed ) :> obj
( fun (v : M33d) -> M34i.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M34l.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M34f.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M34d.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M44i.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M44l.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M44f.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M44d.op_Explicit v.Transposed ) :> obj
( fun (v : M33d) -> M22i.op_Explicit v ) :> obj
( fun (v : M33d) -> M22l.op_Explicit v ) :> obj
( fun (v : M33d) -> M22f.op_Explicit v ) :> obj
( fun (v : M33d) -> M22d.op_Explicit v ) :> obj
( fun (v : M33d) -> M23i.op_Explicit v ) :> obj
( fun (v : M33d) -> M23l.op_Explicit v ) :> obj
( fun (v : M33d) -> M23f.op_Explicit v ) :> obj
( fun (v : M33d) -> M23d.op_Explicit v ) :> obj
( fun (v : M33d) -> M33i.op_Explicit v ) :> obj
( fun (v : M33d) -> M33l.op_Explicit v ) :> obj
( fun (v : M33d) -> M33f.op_Explicit v ) :> obj
( fun (v : M33d) -> v ) :> obj
( fun (v : M33d) -> M34i.op_Explicit v ) :> obj
( fun (v : M33d) -> M34l.op_Explicit v ) :> obj
( fun (v : M33d) -> M34f.op_Explicit v ) :> obj
( fun (v : M33d) -> M34d.op_Explicit v ) :> obj
( fun (v : M33d) -> M44i.op_Explicit v ) :> obj
( fun (v : M33d) -> M44l.op_Explicit v ) :> obj
( fun (v : M33d) -> M44f.op_Explicit v ) :> obj
( fun (v : M33d) -> M44d.op_Explicit v ) :> obj
]

let private matrix34Conversions =
Expand Down
5 changes: 3 additions & 2 deletions src/Demo/Demo/Program.fs
Original file line number Diff line number Diff line change
Expand Up @@ -1058,10 +1058,11 @@ let main args =
DefaultSurfaces.trafo |> toEffect
//DefaultSurfaces.constantColor C4f.Red |> toEffect
DefaultSurfaces.constantColor C4f.White |> toEffect
DefaultSurfaces.diffuseTexture |> toEffect
//DefaultSurfaces.diffuseTexture |> toEffect
DefaultSurfaces.normalMap |> toEffect
DefaultSurfaces.lighting true |> toEffect
DefaultSurfaces.lighting false |> toEffect
]
|> Sg.trafo (Trafo3d.RotationZ(45.0 / 57.296) |> Mod.constant) //(Trafo3d.FromBasis(V3d.IOO, V3d(10.0, 1.0, 0.0).Normalized, V3d.OOI, V3d.Zero) |> Mod.constant)
|> Sg.viewTrafo (view |> Mod.map CameraView.viewTrafo)
|> Sg.projTrafo proj.ProjectionTrafos.Mod
//|> Sg.trafo (Mod.constant <| Trafo3d.ChangeYZ)
Expand Down

0 comments on commit 163b79e

Please sign in to comment.