Texture dans la class render des mob.
-
[Je sais, je n’est pas trouvai mieux comme titre pour le sujet.]
Salut, Vous aurai remarquai que certain mobs, on une texture “mentaux”, comme pour l’enderman ou même l’enderdragon, on vois leur yeux même si il fais noir complais, sella viens d’une texture qui superpose la première et a qui on peu donnais plain de propriété différente :).
Je souhaiterai savoir comment faire, car quand je reprend les codes, sa va AUTOMATIQUEMENT cherchai les textures dans le Minecraft.jarPourriez vous éclairez ma lanterne svp, merci d’avance ^^.
-
ResourceLocation ?
new ResourceLocation(“mon modid en minuscule”, “textures/…/nom.png”) -
RessourceLocation, c’est du 1.6.2. En 1.5.2, c’est différent.
-
sa par exemple:
:::
[CODE_Java] protected int renderGlow(EntityDragon par1EntityDragon, int par2, float par3)
{
if (par2 == 1)
{
GL11.glDepthFunc(GL11.GL_LEQUAL);
}if (par2 != 0)
{
return -1;
}
else
{
this.loadTexture(“Endroit_de_ma_texture”);
float f1 = 1.0F;
GL11.glEnable(GL11.GL_BLEND);
GL11.glDisable(GL11.GL_ALPHA_TEST);
GL11.glBlendFunc(GL11.GL_ONE, GL11.GL_ONE);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDepthFunc(GL11.GL_EQUAL);
char c0 = 61680;
int j = c0 % 65536;
int k = c0 / 65536;
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float)j / 1.0F, (float)k / 1.0F);
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glColor4f(1.0F, 1.0F, 1.0F, f1);
return 1;
}
}[/CODE_Java]
::: -
/mods/tonmodid/textures/…/texture.png
Pourquoi vous codez tous en 1.5.2 o_O ?
-
XD, se que tu me dit la ne fonctionne pas, en faite sa va automatiquement cherchai les texture a la source du Minecraft.jar, enfin … je crois …
-
[CODE_Java]
this.loadTexture(“Endroit_de_ma_texture”);
[/CODE_Java]“/mods/nomDuDossier/textures/laTextureASuperposer.png”
voilà.
-
Sa ne fonctionne pas j’ai dit ! XD
-
Pas normal, ça devrait fonctionner.
Tu es sur que tu as bien placé la texture ? -
au que oui :(.
a moin que je doive changer de structure ? -
up
La je ne vois vraiment pas :(. -
Pour l’araignée c’est ceci :
/** * Sets the spider's glowing eyes */ protected int setSpiderEyeBrightness(EntitySpider par1EntitySpider, int par2, float par3) { if (par2 != 0) { return -1; } else { this.func_110776_a(field_110891_a); float f1 = 1.0F; GL11.glEnable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glBlendFunc(GL11.GL_ONE, GL11.GL_ONE); if (par1EntitySpider.isInvisible()) { GL11.glDepthMask(false); } else { GL11.glDepthMask(true); } char c0 = 61680; int j = c0 % 65536; int k = c0 / 65536; OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float)j / 1.0F, (float)k / 1.0F); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glColor4f(1.0F, 1.0F, 1.0F, f1); return 1; } }
je te laisse allez voir dans le rendu de celle-ci.
-
merci je regarde sa :), par contre je ne vois pas le chemin de la texture, normale ?
devrais-je plutôt dire: Pour quoi le chemin de la texture est remplacé pas un “this.func_(field_)” ?
-
Cette fonction :
this.func_110776_a(field_110891_a);
appel la nouvelle texture qui va surplomber l’autre donc field_110891.
Car nous voulons seulement une seul zone lumineuse donc les yeux donc nous avons qu’a créer deux rendu superposé des yeux.
C’est une supposition bien-sur.
-
Oui et c’est se que je cherche a faire depuis 2 ou 3 jour :).
-
Si j’ai pu répondre à ta question n’oublie pas de mettre résolus s’il te plait :).
-
bain … le truc c’est que se n’est pas résolut x).
Y a encore un ou deux truc que je n’est pas testait, et sa ne fonctionne pas pour le moment x).
-
Up.
Sauf que je n’est pas précisé, que aucune trace du (func_110776_a) et du (field_110891_a) na étai trouvais …
Je r’appelle que c’est en 1.5.2. -
*/ protected int renderEyes(MobSuperEnderman mob, int par2, float par3) { if(par2 != 0) { return -1; } else { this.loadTexture("/mob/enderman_eyes.png"); float var4 = 1.0F; GL11.glEnable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_ALPHA_TEST); GL11.glBlendFunc(GL11.GL_ONE, GL11.GL_ONE); GL11.glDisable(GL11.GL_LIGHTING); char var5 = 61680; int var6 = var5 % 65536; int var7 = var5 / 65536; OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, (float)var6 / 1.0F, (float)var7 / 1.0F); GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); GL11.glEnable(GL11.GL_LIGHTING); GL11.glColor4f(1.0F, 1.0F, 1.0F, var4); return 1; } } /** * Queries whether should render the specified pass or not. */ protected int shouldRenderPass(EntityLiving entityliving, int par2, float par3) { return this.renderEyes((MobSuperEnderman)entityliving, par2, par3); }
As tu quelque chose comme ça ?
-
Yep, mais c’est le “this.loadTexture” qui foire tout je pense.
Car pourtant je dit dallais cherchai la texture au bonne endroit.
Je crois que sa commence cherchai a la racine du Minecraft.jar avec se code.