Love2D 渲染器错误
Love2D Renderer Error
我正在关注教我如何制作平台游戏的 tutorial。在第二个教程中,我们开始制作渲染器。每当我 运行 代码并测试渲染器时,我都会收到此错误
Error: main.lua:24: attempt to index global 'renderer' (a nil value)
我不知道如何修复它,所以这是我的代码。
renderer.lua
local Renderer = {}
local num_of_layers = 5
local insert = table.insert
local remove = table.remove
function Renderer:create()
local renderer = {}
--
renderer.drawers = {}
for i = 0,num_of_layers do
renderer.drawers[i] = {}
end
--
function renderer:addRenderer(obj, Layer)
local l = layer or 0
insert(self.drawers[l], obj)
end
--
function renderer:draw()
for layer = 0,#self.drawers do
for draw = 0,#self.drawers[layer] do
local obj = self.drawers[layer][draw]
if obj ~= nil then
obj:draw()
end
end
end
end
return renderer
end
--
return Renderer
这里是main.lua
local Renderer = require("libs/renderer")
Renderer = Renderer:create()
function love.load()
love.graphics.setBackgroundColor(255, 255, 255)
--Loading Classes
player_load()
--Loading Classes
end
--
function love.update(dt)
end
--
function love.draw()
renderer:draw()
end
感谢所有阅读的人!
Lua区分大小写。
Renderer = Renderer:create() 与
不同
渲染器 = Renderer:create()
我正在关注教我如何制作平台游戏的 tutorial。在第二个教程中,我们开始制作渲染器。每当我 运行 代码并测试渲染器时,我都会收到此错误
Error: main.lua:24: attempt to index global 'renderer' (a nil value)
我不知道如何修复它,所以这是我的代码。
renderer.lua
local Renderer = {}
local num_of_layers = 5
local insert = table.insert
local remove = table.remove
function Renderer:create()
local renderer = {}
--
renderer.drawers = {}
for i = 0,num_of_layers do
renderer.drawers[i] = {}
end
--
function renderer:addRenderer(obj, Layer)
local l = layer or 0
insert(self.drawers[l], obj)
end
--
function renderer:draw()
for layer = 0,#self.drawers do
for draw = 0,#self.drawers[layer] do
local obj = self.drawers[layer][draw]
if obj ~= nil then
obj:draw()
end
end
end
end
return renderer
end
--
return Renderer
这里是main.lua
local Renderer = require("libs/renderer")
Renderer = Renderer:create()
function love.load()
love.graphics.setBackgroundColor(255, 255, 255)
--Loading Classes
player_load()
--Loading Classes
end
--
function love.update(dt)
end
--
function love.draw()
renderer:draw()
end
感谢所有阅读的人!
Lua区分大小写。
Renderer = Renderer:create() 与
不同
渲染器 = Renderer:create()