AS
привет всем.
подскажите пожалуйста, чтото не получилось нагуглить.
а как задать монитор и разрешение на которое нужно выводить?
Size: a a a
AS
W

DS
IK
W

МЛ
//Возвращает дистанцию до "входа" в волюм и "выхода" из волюма луча
float2 atmosphere_sdf_ray(float3 CameraLocation, float3 CameraDirection, float Radius)
{
//Находим дистанцию до точки поверхности сфера
float Distance = length(CameraLocation) - Radius;
//Находим точку пересечения луча и поверхноти
float3 InPoint = CameraDirection * Distance + CameraLocation;
//Определим "Срез сферы", через который проходит луч
float RayRad = PI - dot( InPoint, -CameraDirection );
float RayNormalRad = PI * 0.5f - RayRad;
float m = sin( RayRad );
float mm = m * m;
float RR = Radius * Radius;
float r = sqrt( RR - mm );
return float2
(
Distance,
length(r*r * CameraDirection + InPoint)
);
}
МЛ
OG
OG
OG
МЛ
OG
OG
МЛ
OG
OG
OG