我使用了3D iphone(.pod)模型,它在PVRShammon中正确显示。
但是当我将这个3D模型导入到isgl3D中时,它没有正确显示纹理图像,图像只覆盖了一些有一些线条和三角形的对象区域。
_cameraController = [[Isgl3dDemoCameraController alloc] initWithCamera:self.camera andView:self];
_cameraController.orbit = 10;
_cameraController.theta = 20;
_cameraController.phi = 0;
_cameraController.doubleTapEnabled = NO;
Isgl3dPODImporter * podImporter = [Isgl3dPODImporter podImporterWithFile:@"iPhone5Spod.pod"];
[podImporter printPODInfo];
[podImporter buildSceneObjects];
Isgl3dTextureMaterial *material2 = [[[Isgl3dTextureMaterial alloc]
initWithTextureFile:@"DiffuseBody2.jpg"
shininess:0.0
precision:Isgl3dTexturePrecisionHigh
repeatX:YES
repeatY:YES] autorelease];
mesh2 = [podImporter meshAtIndex:4];
node2 = [self.scene createNodeWithMesh: mesh2 andMaterial:material2];
mesh2.normalizationEnabled = YES;
node2.position = iv3(0, 0, 0);
node2.rotationY = 180;
[podImporter addMeshesToScene:self.scene];
Isgl3dLight * light = [Isgl3dLight lightWithHexColor:@"FFFFFF" diffuseColor:@"FFFFFF" specularColor:@"FFFFFF" attenuation:0.000];
light.lightType = DirectionalLight;
[light setDirection:-1 y:-1 z:0];
[self setSceneAmbient:[Isgl3dColorUtil rgbString:[podImporter ambientColor]]];
[self schedule:@selector(tick:)];
更多信息请查看图像。 Output image in isgl3D view
答案 0 :(得分:1)
这只是我的两分钱。你的纹理是否遵循isgl3D要求?
来自isgl3D 教程3 - 纹理映射 http://isgl3d.com/tutorials/4/tutorial_3_texture_mapping
对于标准图像文件,图像大小必须为2 兼容:例如64x128,256x32等。对于pvr纹理,图像文件 也必须是正方形:例如64x64,256x256等
希望得到这个帮助。