Действительно поздний ответ, но кто-то обязательно нуждается в нем.
Имейте метод в классе основного блока, который возвращает текстуру с параметром для лица. В отдельных классах, которым требуется несколько текстур, переопределите этот метод и используйте регистр переключения или серию операторов if / else.
Вот как будет выглядеть метод в классе блока:
public int getBlockTexture(int face){
if(face = top){
return grass top
} else if(face = bottom){
return grass bottom
} else {
return grass side
}
}
Что касается того, как вы используете это в рендерере, возьмите текстуру перед рендерингом каждого лица. Подобно тому, как вы делаете выбраковку.