new
This commit is contained in:
30
sdl.cm
30
sdl.cm
@@ -25,13 +25,13 @@ function init(opts) {
|
||||
_resolution_w = opts.width || 640
|
||||
_resolution_h = opts.height || 480
|
||||
|
||||
_window = new video.window({
|
||||
_window = video.window({
|
||||
title: opts.title || "lance3d",
|
||||
width: _resolution_w,
|
||||
height: _resolution_h
|
||||
})
|
||||
|
||||
_gpu = new gpu_mod.gpu({ debug: true, shaders_msl: true })
|
||||
_gpu =gpu_mod.gpu({ debug: true, shaders_msl: true })
|
||||
_gpu.claim_window(_window)
|
||||
|
||||
var vert_code = io.slurp("shaders/retro3d.vert.msl")
|
||||
@@ -42,7 +42,7 @@ function init(opts) {
|
||||
return false
|
||||
}
|
||||
|
||||
_vert_shader = new gpu_mod.shader(_gpu, {
|
||||
_vert_shader =gpu_mod.shader(_gpu, {
|
||||
code: vert_code,
|
||||
stage: "vertex",
|
||||
format: "msl",
|
||||
@@ -50,7 +50,7 @@ function init(opts) {
|
||||
num_uniform_buffers: 2
|
||||
})
|
||||
|
||||
_frag_shader = new gpu_mod.shader(_gpu, {
|
||||
_frag_shader =gpu_mod.shader(_gpu, {
|
||||
code: frag_code,
|
||||
stage: "fragment",
|
||||
format: "msl",
|
||||
@@ -63,7 +63,7 @@ function init(opts) {
|
||||
|
||||
var skinned_vert_code = io.slurp("shaders/retro3d_skinned.vert.msl")
|
||||
if (skinned_vert_code) {
|
||||
_skinned_vert_shader = new gpu_mod.shader(_gpu, {
|
||||
_skinned_vert_shader =gpu_mod.shader(_gpu, {
|
||||
code: skinned_vert_code,
|
||||
stage: "vertex",
|
||||
format: "msl",
|
||||
@@ -76,21 +76,21 @@ function init(opts) {
|
||||
get_pipeline(false, "opaque", "back")
|
||||
get_pipeline(true, "opaque", "back")
|
||||
|
||||
_sampler_nearest = new gpu_mod.sampler(_gpu, {
|
||||
_sampler_nearest =gpu_mod.sampler(_gpu, {
|
||||
min_filter: "nearest",
|
||||
mag_filter: "nearest",
|
||||
u: "repeat",
|
||||
v: "repeat"
|
||||
})
|
||||
|
||||
_sampler_linear = new gpu_mod.sampler(_gpu, {
|
||||
_sampler_linear =gpu_mod.sampler(_gpu, {
|
||||
min_filter: "linear",
|
||||
mag_filter: "linear",
|
||||
u: "repeat",
|
||||
v: "repeat"
|
||||
})
|
||||
|
||||
_depth_texture = new gpu_mod.texture(_gpu, {
|
||||
_depth_texture =gpu_mod.texture(_gpu, {
|
||||
width: _resolution_w,
|
||||
height: _resolution_h,
|
||||
format: "d32 float s8",
|
||||
@@ -168,7 +168,7 @@ function get_pipeline(skinned, alpha_mode, cull) {
|
||||
vertex_attrs.push({ location: 5, buffer_slot: 0, format: "float4", offset: 64 })
|
||||
}
|
||||
|
||||
var pipeline = new gpu_mod.graphics_pipeline(_gpu, {
|
||||
var pipeline =gpu_mod.graphics_pipeline(_gpu, {
|
||||
vertex: vert_shader,
|
||||
fragment: _frag_shader,
|
||||
primitive: "triangle",
|
||||
@@ -197,7 +197,7 @@ function get_pipeline(skinned, alpha_mode, cull) {
|
||||
}
|
||||
|
||||
function create_texture(w, h, pixels) {
|
||||
var tex = new gpu_mod.texture(_gpu, {
|
||||
var tex =gpu_mod.texture(_gpu, {
|
||||
width: w,
|
||||
height: h,
|
||||
format: "rgba8",
|
||||
@@ -208,7 +208,7 @@ function create_texture(w, h, pixels) {
|
||||
})
|
||||
|
||||
var size = w * h * 4
|
||||
var transfer = new gpu_mod.transfer_buffer(_gpu, {
|
||||
var transfer =gpu_mod.transfer_buffer(_gpu, {
|
||||
size: size,
|
||||
usage: "upload"
|
||||
})
|
||||
@@ -232,12 +232,12 @@ function create_texture(w, h, pixels) {
|
||||
|
||||
function create_vertex_buffer(data) {
|
||||
var size = length(data) / 8
|
||||
var buffer = new gpu_mod.buffer(_gpu, {
|
||||
var buffer =gpu_mod.buffer(_gpu, {
|
||||
size: size,
|
||||
vertex: true
|
||||
})
|
||||
|
||||
var transfer = new gpu_mod.transfer_buffer(_gpu, {
|
||||
var transfer =gpu_mod.transfer_buffer(_gpu, {
|
||||
size: size,
|
||||
usage: "upload"
|
||||
})
|
||||
@@ -259,12 +259,12 @@ function create_vertex_buffer(data) {
|
||||
|
||||
function create_index_buffer(data) {
|
||||
var size = length(data) / 8
|
||||
var buffer = new gpu_mod.buffer(_gpu, {
|
||||
var buffer =gpu_mod.buffer(_gpu, {
|
||||
size: size,
|
||||
index: true
|
||||
})
|
||||
|
||||
var transfer = new gpu_mod.transfer_buffer(_gpu, {
|
||||
var transfer =gpu_mod.transfer_buffer(_gpu, {
|
||||
size: size,
|
||||
usage: "upload"
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user