require "Vector" local V = Vector require "Primitives" local P = Primitives require "Operations" local O = Operations require "Textures" local T = Textures require "Render" local lights = {V.new{1,-1,1}} local plane_normal = V.normalize(V.new{0.0,-1,0.0}) local texture_y = V.normalize(V.cross(plane_normal,V.x)) local texture_x = V.cross(texture_y,plane_normal) local scene = { -- sdf = P.make_plane(V.new{0,0,0}, plane_normal, -- T.make_phong_texture(lights, -- T.map_rectangular( -- T.make_mandelbrot_pigment( -- T.make_checkered_pigment({0.5,0.2,1.0},{1,1,1}), -- T.make_checkered_pigment({1,1,1},{0.5,0.2,1.0}), -- 20), -- texture_x, texture_y), -- 0.2, 1.0, 0, 1)), sdf = P.make_plane(V.origin, plane_normal, T.make_phong_texture(lights,T.map_rectangular(T.make_solid_pigment({0.5,0.2,1.0}), texture_x, texture_y), 0.2, 1.0, 0.5, 20)), camera = {location = V.new{0,-5,0}, point_at = V.new{0,0,0}, right = V.x, fov = 1}} Render.render(scene, 300, 200, "mandel_wall.ppm")