小编tbp*_*tbp的帖子

在将.obj转换为.h时不能使用'defined(@array)'警告

我正在尝试将我的.obj文件转换为.h头文件,但我得到"无法使用"定义(@array)'(也许你应该省略已定义的()?)"警告而不是.h文件已创建.

我试着更换@center$center或omintting defined()但它创建的.exe文件!
我在某处读到它可能是一个perl版本问题,我的是5.22,我找不到更高版本的尝试.

Update1:
我把"obj2opengl.pl"和"myobject.obj"放在同一个文件夹中.并尝试在控制台(win10)中使用此代码转换它: c:\obj2openglfolder>obj2opengl.pl myobject.obj

Update2:
这是导致问题的line154代码:

if(defined(@center)) {
    $xcen = $center[0];
    $ycen = $center[1];
    $zcen = $center[2];
}
Run Code Online (Sandbox Code Playgroud)

Update3:
这是整个代码:

# -----------------------------------------------------------------

# Main Program

# -----------------------------------------------------------------

handleArguments();
# derive center coords and scale factor if neither provided nor disabled

unless(defined($scalefac) && defined($xcen)) {
calcSizeAndCenter();

}


if($verbose) {
printInputAndOptions();

}


# TODO check integrity: Does every referenced vertex, normal and coord 
exist?

loadData();

normalizeNormals();


if($verbose) {
printStatistics();

}


writeOutput();


# ----------------------------------------------------------------- …
Run Code Online (Sandbox Code Playgroud)

opengl perl header-files .obj

0
推荐指数
2
解决办法
5121
查看次数

标签 统计

.obj ×1

header-files ×1

opengl ×1

perl ×1