У меня все отлично работает с Rajawali на Android, кроме текстур. Я хотел бы программно загрузить прозрачное изображение в виде текстуры с рисунком шахматной доски, где каждый черный квадрат фактически полностью прозрачен, а каждый белый квадрат просто белый. Я хотел бы использовать это как текстуру над объектом, который в противном случае имеет свойства рассеянного и зеркального цвета, которые можно изменить программно. Итак, если пользователь ввел синий цвет, я бы хотел, чтобы объект отображал сине-белый узор. Как я могу это сделать? Учебники rajawali не очень помогают, так как текстуры rajawali сильно изменились в последнем обновлении. Кроме того, приложение примеров Раджавали не очень помогает, поскольку все они, похоже, имеют дело с картами окружающей среды. Я пробовал, например:
protected void initScene() {
objParser = new LoaderOBJ(mContext.getResources(), mTextureManager, R.raw.stdblock_obj);
try{
Texture jetTexture = new Texture("jetTexture", R.drawable.chessboardtexture);
mTextureManager.getInstance().addTexture(jetTexture);
semiglossMaterial.addTexture(jetTexture);
semiglossMaterial.setColorInfluence(0);
}catch(TextureException e){
e.printStackTrace();
}
}
Объект визуализируется, но без текстуры. Размер изображения шахматной доски равен степени 2, и оно находится в правой папке R.raw.stdblock_obj. Это изображение в формате jpg, но я также пробовал использовать png, который тоже не работал.
Я также пробовал другой подход:
semiglossMaterial.enableLighting(true);
semiglossMaterial.setDiffuseMethod(new DiffuseMethod.Lambert());
phongMethod.setShininess(iShininess); semiglossMaterial.addTexture(new Texture("jetTexture",R.drawable.chessboardtexture));
semiglossMaterial.addTexture(new AlphaMapTexture("alphaMapTex", R.drawable.simpletexture3));
semiglossMaterial.setColorInfluence(0);
но и это не сработало. У кого-нибудь есть идея?
R.drawable.chessboardtexture
это изображение, которое будет использоваться в качестве текстуры. Но какова цельR.raw.stdblock_obj
? Это образ? - person kiranpradeep   schedule 19.03.2015