Update grany de la 2.4 la 2.9

Ghiduri şi tutoriale despre cum să vă îmbunătăţiţi serverul/clientul dv. de metin2.
Avatar utilizator
Electrico
Nivel 2

Nivel 2
Mesaje: 288
Membru din: 16 Oct 2015, 12:32
Server: Respawn
Regat: Jinno
Aprecieri: 1  
Mulţumiri: 302  
Medalii

Aici aveti tutorialul in engleza

Cod: Selectaţi tot

1. Step:

Navigate to novalineSrcsToolsRAD Game Toolsgrannycommon and unzip the file granny_common_2_9_12_0_release.zip. You will receive some folders. Now you navigate into the folder include and copy the granny.h file to the include folder of your client (for me it's mainline_releasedSrcsExterninclude). Then you go into the libwin32 folder and copy all the *.lib and *.pdb files into your lib folder of your client.

 

2. Step:

Open your client source and navigate to the project EterGrnLib.

Open Mesh.cpp.

Search for this:

int * boneIndices = GrannyGetMeshBindingToBoneIndices(pgrnMeshBinding);
Replace with this:

int * boneIndices = (int*)GrannyGetMeshBindingToBoneIndices(pgrnMeshBinding);
Search for this:

return GrannyGetMeshBindingToBoneIndices(m_pgrnMeshBindingTemp);
Replace with this:

return (int*)GrannyGetMeshBindingToBoneIndices(m_pgrnMeshBindingTemp);
Search for this:

m_pgrnMeshDeformer = GrannyNewMeshDeformer(pgrnInputType, pgrnOutputType, GrannyDeformPositionNormal);
Replace with this:

m_pgrnMeshDeformer = GrannyNewMeshDeformer(pgrnInputType, pgrnOutputType, GrannyDeformPositionNormal, GrannyAllowUncopiedTail);
-----

Open ModelInstanceUpdate.cpp.

Search for this:

GrannyUpdateModelMatrix(m_pgrnModelInstance, fSecondsElapsed, (const float *) pMatrix, (float *) pMatrix);
Replace with this:

GrannyUpdateModelMatrix(m_pgrnModelInstance, fSecondsElapsed, (const float *) pMatrix, (float *) pMatrix, false);
-----

Open Material.cpp.

Search for this:

granny_variant twoSideResult = GrannyFindMatchingMember(pgrnMaterial->ExtendedData.Type, pgrnMaterial->ExtendedData.Object, "Two-sided");

if (NULL != twoSideResult.Type)
	GrannyConvertSingleObject(twoSideResult.Type, twoSideResult.Object, TwoSidedFieldType, &twoSided);
Replace with this:

granny_variant twoSideResult;

if (GrannyFindMatchingMember(pgrnMaterial->ExtendedData.Type, pgrnMaterial->ExtendedData.Object, "Two-sided", &twoSideResult)  
	&& NULL != twoSideResult.Type)
	GrannyConvertSingleObject(twoSideResult.Type, twoSideResult.Object, TwoSidedFieldType, &twoSided, NULL);
-----

Open ModelInstanceModel.cpp

Search for this:

return GrannyGetMeshBindingToBoneIndices(m_vct_pgrnMeshBinding[iMeshBinding]);
Replace with this:

return (int*)GrannyGetMeshBindingToBoneIndices(m_vct_pgrnMeshBinding[iMeshBinding]);
-----

Navigate to the UserInterface project.

Open UserInterface.cpp.

Search for this (it's at the end of the file):

static void GrannyError(granny_log_message_type Type,
						granny_log_message_origin Origin,
						char const *Error,
						void *UserData)
{
    TraceError("GRANNY: %s", Error);
}
Replace with this:

static void GrannyError(granny_log_message_type Type,
						granny_log_message_origin Origin,
						char const* File,
						granny_int32x Line,
						char const *Error,
						void *UserData)
{
    TraceError("GRANNY: %s", Error);
}
Now rebuild the whole project!

 

 

3. Step:

Go to the folder where we unziped the things of the first step and go to the lib folder. Copy the granny2.dll into your main client directory.

 
Pentru acest mesaj, Electrico for the post:
PapiFafy
Imagine

Daca te-am ajutat, apasa pe butonul "Multumesc" !
Afișează semnătura
Avatar utilizator
oneX
Fondator SEDNA.RO

Fondator SEDNA.RO
Mesaje: 859
Membru din: 06 Sep 2013, 07:47
Server: Wild Fantasy
Regat: Shinsoo
Aprecieri: 236  
Mulţumiri: 779  
 Contact:
Medalii

Open Material.cpp nui buna linia asta
Pentru acest mesaj, oneX for the post:
唐俊承
Imagine

Discord: onexRO
Afișează semnătura
Răspunde
Răspunsuri
6
Vizualizări
687
Răspunsuri
0
Vizualizări
145
Răspunsuri
1
Vizualizări
140

Înapoi la “Ghiduri şi Tutoriale”

  • Informaţie
  • Cine este conectat

    Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 4 vizitatori