{"id":17250090,"url":"https://github.com/stephengold/ryzomconverter","last_synced_at":"2025-07-28T12:12:47.527Z","repository":{"id":97311555,"uuid":"221790826","full_name":"stephengold/RyzomConverter","owner":"stephengold","description":"Adapt models from the Ryzom Asset Repository for use with jMonkeyEngine.","archived":false,"fork":false,"pushed_at":"2025-03-05T07:46:06.000Z","size":575,"stargazers_count":3,"open_issues_count":3,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-27T18:55:30.296Z","etag":null,"topics":["3d-models","animation","file-conversion","java","jme3","jmonkeyengine3","ryzom"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stephengold.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-11-14T21:35:12.000Z","updated_at":"2025-03-05T07:46:09.000Z","dependencies_parsed_at":"2023-11-23T21:24:47.451Z","dependency_job_id":"39e36f59-de1a-4389-b9d9-673706204116","html_url":"https://github.com/stephengold/RyzomConverter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephengold%2FRyzomConverter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephengold%2FRyzomConverter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephengold%2FRyzomConverter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stephengold%2FRyzomConverter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stephengold","download_url":"https://codeload.github.com/stephengold/RyzomConverter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248824681,"owners_count":21167345,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-models","animation","file-conversion","java","jme3","jmonkeyengine3","ryzom"],"created_at":"2024-10-15T06:46:09.743Z","updated_at":"2025-04-14T05:10:48.031Z","avatar_url":"https://github.com/stephengold.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"RyzomConverter adapts character models and animations\nfrom the Ryzom Asset Repository\nfor use with [jMonkeyEngine](http://jmonkeyengine.org).\n\nRyzomConverter derives from Java software created by Alweth.\nBefore using, modifying, selling, or distributing\nthis software or its output, please read\n[Alweth's license](https://github.com/stephengold/RyzomConverter/blob/master/LICENSE)\nvery carefully.\n\nThe Ryzom Asset Repository is available under a\n[CC-BY-SA 3.0 license](https://creativecommons.org/licenses/by-sa/3.0/),\nso if you distribute the converted files or anything built from them,\nyou should do so under that license.\n\n\n\u003ca name=\"gallery\"\u003e\u003c/a\u003e\n\n## Screenshot gallery\n\n\u003cimg height=\"360\" src=\"https://i.imgur.com/wVcItj0.jpg\"\u003e\n\nThe screenshot is derived from Ryzom Asset Repository, licensed CC-BY-SA 3.0.\nAlweth is acknowledged for authoring `RyzomConverter`\nand providing it free of charge.\n\n\n\u003ca name=\"procedure\"\u003e\u003c/a\u003e\n\n## Conversion procedure\n\nThe suggested procedure (for Bash users) is:\n\n 1. `mkdir RyzomAssets`\n 2. `cd RyzomAssets`\n 3. `git clone https://bitbucket.org/ccxvii/ryzom-assets.git`\n 4. `cd ..`\n 5. `git clone https://github.com/stephengold/RyzomConverter.git`\n 6. `cd RyzomConverter`\n 7. `./gradlew run`\n\nThe final step may take 4 minutes or more.\n\nConverted assets are written to the\n`RyzomConverter/assets/ryzom-assets/export` folder.\nThey should occupy about 750 MBytes of filesystem storage.\nThere should be 4 J3O animations files,\n1958 J3O geometries files, and 1183 PNG texture files.\nOnce the converter has successfully run to completion,\nthe RyzomAssets folder\n(which should occupy about 3.5 GBytes of storage) may be deleted.\n\nThe converted assets occupy less storage space\nbecause not all assets in the Ryzom Asset Repository get converted:\nonly assets in the \"actors\" folder, and even there, the\n\"banners\", \"tools\", and \"weapons\" sub-folders are skipped.\n\nThe asset names and animation names are in a mixture of French and English.\n\n\n\u003ca name=\"next\"\u003e\u003c/a\u003e\n\n## Next steps\n\nTo construct a character in Java code:\n\n 1. register a locator:\n```\n    assetManager.registerLocator(\"../RyzomConverter/assets\", FileLocator.class);\n```\n\n 2. load an animations asset and attach it to the scene graph:\n```\n    ModelKey key = new ModelKey(\"ryzom-assets/export/animations_ca_hom.j3o\");\n    Node characterNode = (Node) assetManager.loadAsset(key);\n    rootNode.attachChild(characterNode);\n```\n\n 3. load a geometries asset for each body part\n    and attach it to the character node.\n    If using the `ca` skeletal group, the code might look something like this:\n```\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_armor01_armpad.j3o\");\n    Spatial arms = manager.loadAsset(key);\n    characterNode.attachChild(arms);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_armor01_gilet.j3o\");\n    Spatial chest = manager.loadAsset(key);\n    characterNode.attachChild(chest);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_visage.j3o\");\n    Spatial face = manager.loadAsset(key);\n    characterNode.attachChild(face);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_armor01_bottes.j3o\");\n    Spatial feet = manager.loadAsset(key);\n    characterNode.attachChild(feet);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_cheveux_basic01.j3o\");\n    Spatial hair = manager.loadAsset(key);\n    characterNode.attachChild(hair);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_armor01_hand.j3o\");\n    Spatial hands = manager.loadAsset(key);\n    characterNode.attachChild(hands);\n\n    key = new ModelKey(\"ryzom-assets/export/fy_hom_armor01_pantabottes.j3o\");\n    Spatial legs = manager.loadAsset(key);\n    characterNode.attachChild(legs);\n```\n\n 5. disable scene-graph culling for all model spatials\n\nEach geometry is designed for a specific skeletal group, either `ca` or `ge`.\nGeometries returned by `loadAsset()` are for the `ca` skeletal group.\nGeometries for the `ge` skeletal group\nare stashed in the `ryzom_alternative` user data of each geometry asset.\n\n + The `ca` group provides 76 animations for males and 53 for females.\n + The `ge` group provides 1654 animations for males and 1452 for females.\n\n\n\u003ca name=\"links\"\u003e\u003c/a\u003e\n\n## External links\n\nOpen-source demo software is available\nfrom [GitHub](https://github.com/stephengold/RyzomDemos).\n\nFor more information about RyzomConverter, read\n[its topic at the jME Forum](https://hub.jmonkeyengine.org/t/convert-all-ryzom-character-models-and-animations-to-j3o-format/37859).\n\nFor more information about *The Saga of Ryzom* (the MMORPG for which\nthe assets were created) read\n[its Wikipedia article](https://en.wikipedia.org/wiki/Ryzom).\n\nFor more information about the licensing of the Ryzom Asset Repository, read\n[the May 2010 Creative Commons press release](https://creativecommons.org/2010/05/06/massively-multiplayer-game-ryzom-released-as-free-culture-and-free-software/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephengold%2Fryzomconverter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstephengold%2Fryzomconverter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephengold%2Fryzomconverter/lists"}