Files
bgfx/examples/18-ibl/vs_ibl_skybox.sc
2026-01-09 06:40:56 +00:00

26 lines
606 B
Scala

$input a_position, a_texcoord0
$output v_dir
/*
* Copyright 2014-2016 Dario Manesku. All rights reserved.
* License: https://github.com/bkaradzic/bgfx/blob/master/LICENSE
*/
#include "../common/common.sh"
#include "uniforms.sh"
uniform mat4 u_mtx;
void main()
{
gl_Position = mul(u_modelViewProj, vec4(a_position, 1.0) );
float fov = radians(45.0);
float height = tan(fov*0.5);
float aspect = height*(u_viewRect.z / u_viewRect.w);
vec2 tex = (2.0*a_texcoord0-1.0) * vec2(aspect, height);
mat4 mtx = mtxFromCols(u_mtx0, u_mtx1, u_mtx2, u_mtx3);
v_dir = mul(mtx, vec4(tex, 1.0, 0.0) ).xyz;
}