GDQuest入门课程:draw_rectangle传Vector2无效原因咨询
问题解答
核心原因
draw_rectangle函数要求接收两个独立的数值参数(分别对应矩形的宽度和高度),而非一个Vector2类型对象。你直接传入Vector2变量时,函数无法解析这个复合类型参数,导致调用失效。
详细说明
你的代码里,size是Vector2实例,自带x(宽度)和y(高度)两个属性。标准答案拆分出size.x和size.y传入,就是因为draw_rectangle需要的是两个单独数值,不是封装好的向量对象。
打个比方:如果一个函数要你分别输入“身高”和“体重”,你直接递一张写着这俩数据的卡片过去,函数没法直接读取,必须把卡片上的两个数值单独拆出来传进去才行。
如何确认
你可以查看draw_rectangle的函数定义(比如课程示例代码或Godot的提示),它的参数签名应该类似这样:
func draw_rectangle(width: float, height: float): # 函数内部实现
这种情况下,传入Vector2类型参数会因类型不匹配,被函数拒绝处理。
内容的提问来源于stack exchange,提问作者Keega
相关产品推荐
相关产品推荐

