我试图在gosu(ruby)中制作一些简单的形状。我发现在哪里调用函数很困难。是更新方法还是绘制方法。
require 'rubygems'
require 'gosu'
class DemoWindow < Gosu::Window
def initialize
super(640, 400, false)
end
def draw
draw_quad(x-size, y-size, 0xffffffff, x+size, y-size, 0xffffffff, x-size, y+size, 0xffffffff, x+size, y+size, 0xffffffff, 0)
draw_triangle(x1, y1, c1, x2, y2, c2, x3, y3, c3, z=0, mode=:default)
draw_line(x1, y1, c1, x2, y2, c2, z=0, mode=:default)
end
end
如果这是创建形状的正确方法,请查看并告诉我。
答案 0 :(得分:0)
从我所看到的,你所得到的应该是有用的。
我注意到有关Gosu的一件事是,当它第一次启动时,它会在调用更新函数之前调用draw方法。这意味着如果你有(不包括你正在使用的形状函数)你要绘制到屏幕的任何图像,你只有在更新方法中定义了坐标,程序将无法工作。你必须首先在draw方法中用一些初步位置定义它们的x和y值。
这可能对你没有帮助,但我认为我会在可能的情况下做出贡献。
答案 1 :(得分:0)
据我所知,您没有update方法,因此它无法呈现
class DemoWindow < Gosu::Window
def initialize
super(640, 400, false)
end
def update
end
def draw
draw_quad(x-size, y-size, 0xffffffff, x+size, y-size, 0xffffffff, x-size, y+size, 0xffffffff, x+size, y+size, 0xffffffff, 0)
draw_triangle(x1, y1, c1, x2, y2, c2, x3, y3, c3, z=0, mode=:default)
draw_line(x1, y1, c1, x2, y2, c2, z=0, mode=:default)
end