Logo Khaganat

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:peluche [2014/08/13 23:14] – Suite de la trad Lyneen:peluche [2021/12/03 19:19] (current) – external edit 127.0.0.1
Line 114: Line 114:
 Repeat the operation on the other "Nel Multi Bitmap" that reference the same image. Repeat the operation on the other "Nel Multi Bitmap" that reference the same image.
  
-==  Step 5: Scaling the model  ==+=====  Step 5: Scaling the model  =====
  
 Our 3d model is almost ready. However, its size does not match what is expected. If you use the 3dsmax measuring tool you will see that the Gubani is 2m high. The simplest way to put it in the right size is to load a Homin model to have visual comparison and ensure that the teddybear can be taken in hand. Our 3d model is almost ready. However, its size does not match what is expected. If you use the 3dsmax measuring tool you will see that the Gubani is 2m high. The simplest way to put it in the right size is to load a Homin model to have visual comparison and ensure that the teddybear can be taken in hand.
Line 139: Line 139:
  
  
-==  Step 6: Adapt the texture for a fluffy look  ==+=====  Step 6: Adapt the texture for a fluffy look  =====
  
 In terms of texture, to give a "plushy effect", give free rein to your imagination In terms of texture, to give a "plushy effect", give free rein to your imagination
Line 160: Line 160:
 {{ fr:18-tuto-peluche-modele3d.png |}} {{ fr:18-tuto-peluche-modele3d.png |}}
  
-==  Step 7: Shape export   ==+=====  Step 7: Shape export   =====
  
  
Line 209: Line 209:
 {{ fr:22-gubani-peluche-axe.png?400 |}} {{ fr:22-gubani-peluche-axe.png?400 |}}
  
-If you want to know more about objects held, you can read this tutorial ((still in French for now - link to be modified when translation is available)): http://khaganat.net/wikhan/fr:creation_d_un_objet_prehensible_en_jeu+If you want to know more about objects held, you can read [[creation_d_un_objet_prehensible_en_jeu|this tutorial]].
  
  
Line 237: Line 237:
  
  
-Unlike coordinates in pixels, these coordinates are using the 3D UV Mapping technique, and have their valeus in [[0|.. 1]] interval. The (0,0) coordinate is the upper left corner of the image and (1,1) is the bottom right corner of the image.+Unlike coordinates in pixels, these coordinates are using the 3D UV Mapping technique, and have their values in [0|.. 1] interval. The (0,0) coordinate is the upper left corner of the image and (1,1) is the bottom right corner of the image.
  
 Passing from one system to the other one is simple. Let (x1,y1) be the place of the upper left corner of our icon in the global image and (x2,y2) the place for its bottom right corner, then: Passing from one system to the other one is simple. Let (x1,y1) be the place of the upper left corner of our icon in the global image and (x2,y2) the place for its bottom right corner, then:
Line 249: Line 249:
   icon_teddygubani.tga 0.115234375 0.779296875 0.1533203125 0.8173828125   icon_teddygubani.tga 0.115234375 0.779296875 0.1533203125 0.8173828125
      
-Even if it can be added by hand, the proper way to do it is to use the dedicated NEL tool //build_interface//, as explained in the http://khaganat.net/wikhan/fr:creer_icone_objet (still in French also), which recreate the global texture and the txt file from a folder with all the icons.+Even if it can be added by hand, the proper way to do it is to use the dedicated NEL tool //build_interface//, as explained in [[creer_icone_objet|this tutorial]], which recreates the global texture and the txt file from a folder with all the icons.
  
  
Line 363: Line 363:
 </FORM> </FORM>
 </code> </code>
 +
 +=====   Step 13: Deploying the soft-toy on the game server and client  =====
 +
 +
 +In order to deploy the soft toy in game, the official method consists in using the "build_gamedata" pipeline (cf. https://ryzomcore.atlassian.net/wiki/display/RC/Gamedata+Build+Pipeline). I'll propose you a different method, where the actions will be done by hand but only the ones required for the soft-toy:
 +
 +We'll need the following files:
 +
 +  * teddygubani.sitem (the datasheet for the teddy-gubani)
 +  * ge_acc_teddy-gubani_01.shape (the 3d NEL model for the soft-toy)
 +  * ge_acc_teddy-gubani_01.dds (the texture for the 3d model)
 +
 +Moreover, deploying this soft-toy will impact the following files:
 +
 +  * the "*.packed_sheets" files used by the server and the client, which are a compiled version of the datasheets
 +  * the "sheet_id.bin" file, which is an index of all the datasheets used by the game
 +  * the "visual_slot.tab" file, which lists the items that can be showed on client side
 +
 +To work properly, we'll also create a "soft-toy.bnp" file, which will include the shapes and the textures for all the future soft-toys.
 +
 +
 +For the next operations, we'll consider that our game server uses linux, and that the following environement variable are defined as follow:
 +
 +  * LEVELDESIGNPATH points out the folder for the datas of the level design
 +  * RYZOM_HOME on the install of the server sources
 +
 +====   Adding the "teddygubani.sitem" datasheet to the server  ====
 +
 +
 +On server side, we'll create a folder dedicated to the soft-toys and place the gubani's one there:
 +
 +  $ mkdir $LEVELDESIGNPATH/leveldesign/game_element/sitem/soft-toy
 +  $ cp teddygubani.sitem $LEVELDESIGNPATH/leveldesign/game_element/sitem/soft-toy
 +
 +====   Cleaning beforehand  ====
 +
 +====   Re-generating the "sheet_id.bin" file  ====
 +
 +The first step consists in regenerating the index file for the datasheets throught the "make_sheet_id" command. It takes over the existing index file and complete it with the datasheets from the $RYZOM_LEVELPATH/leveldesign/game_element/sitem/soft-toy folder, namely the datasheets for our soft-toys.
 +
 +  $ make_sheet_id -o$LEVELDESIGNPATH/leveldesign/Game_elem/sheet_id.bin $LEVELDESIGNPATH/leveldesign/game_element/sitem/soft-toy
 +
 +====   Re-generating the "*.packed_sheets" and "visual_slot.tab"   ====
 +
 +The "*.packed_sheets" have to be regenerated. These are the pre-compiled versions of the datasheets:
 +
 +  $ sheets_packer
 +
 +This command also regenerate the visual_slot.tab file.
 +
 +====   Copying the needed files on the client side  ====
 +
 +  * Copy the "visual_slot.tab" file generated in the current folder into the "user" folder of the game client
 +  * Copy the $LEVELDESIGNPATH/leveldesign/Game_elem/sheet_id.bin file into the "user" folder of the game client
 +  * Replace the packet_sheets files in the "data" folder of the client, with the ones generated in $RYZOM_HOME/code/ryzom/client/data/*.packed_sheets using the //sheets_packer// command
 +
 +
 +====   Creating a bnp for the soft-toy model  ====
 +
 +To end this, you'll have to copy the shape and the texture of the soft-toy into the "data" folder of the client.
 +However, in order to work cleanly, let's create a dedicaed ".bnp" file.
 +A ".bnp" file is some sort of zip that gathers the various shape, dds, txt, or other files on a same theme.
 +
 +Let's create a "soft-toy" folder, and copy in it all the shapes and textures for our soft-toys, meaning for now "ge_acc_teddy-gubani_01.shape" and "ge_acc_teddy-gubani_01.dds" and let's create a BNP file to contain them
 +
 +
 +  bnp_make /p soft-toy
 +
 +The command will create a "soft-toy,bnp" file, which will contain our two files. Now, let's copy it in the "data" folder of the client.
 +
 +
 +====   Testing IG   ====
 +
 +Restart the server with the //shard start// command and connect with your client.
 +
 +If everything went well, when starting your game client, you can create a soft-toy in your inventory with this command:
 +
 +  /a createItemInBag teddygubani 1 5
  
  
 {{tag>Tag_a_ajouter}} {{tag>Tag_a_ajouter}}
CC Attribution-Share Alike 4.0 International Driven by DokuWiki
en/peluche.1407964457.txt.gz · Last modified: 2021/12/03 19:18 (external edit)

Licences Mentions légales Accueil du site Contact