Skip to content

Commit

Permalink
Merge remote-tracking branch 'remotes/v-sekai-godot/vsk-ufbx' into gr…
Browse files Browse the repository at this point in the history
…oups-staging-4.2
  • Loading branch information
fire committed Sep 20, 2023
2 parents b329003 + bd5ae55 commit 154a20e
Show file tree
Hide file tree
Showing 57 changed files with 41,399 additions and 39 deletions.
44 changes: 44 additions & 0 deletions modules/fbx/.all-contributorsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"files": [
"README.md"
],
"imageSize": 100,
"commit": false,
"commitType": "docs",
"commitConvention": "angular",
"contributors": [
{
"login": "bqqbarbhg",
"name": "Samuli",
"avatar_url": "https://avatars.githubusercontent.com/u/3875461?v=4",
"profile": "https://github.com/bqqbarbhg",
"contributions": [
"code"
]
},
{
"login": "fire",
"name": "K. S. Ernest (iFire) Lee",
"avatar_url": "https://avatars.githubusercontent.com/u/32321?v=4",
"profile": "https://chibifire.com",
"contributions": [
"code"
]
},
{
"login": "lyuma",
"name": "lyuma",
"avatar_url": "https://avatars.githubusercontent.com/u/39946030?v=4",
"profile": "https://github.com/lyuma",
"contributions": [
"code"
]
}
],
"contributorsPerLine": 7,
"skipCi": true,
"repoType": "github",
"repoHost": "https://github.com",
"projectName": "godot-ufbx",
"projectOwner": "V-Sekai"
}
57 changes: 57 additions & 0 deletions modules/fbx/.github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: Bug report
description: Report a bug in godot-ufbx
labels: [bug]
body:
- type: markdown
attributes:
value: |
- Write a descriptive issue title above.
- type: textarea
attributes:
label: Issue description
description: |
You can include images or videos with drag and drop, and format code blocks or logs with <code>```</code> tags.
validations:
required: true

- type: textarea
attributes:
label: Steps to reproduce
description: |
List of steps or sample code that reproduces the issue. Having reproducible issues is a prerequisite for contributors to be able to solve them.
If you include a minimal reproduction project below, you can detail how to use it here.
validations:
required: true

- type: textarea
attributes:
label: Minimal reproduction project (For SDK or engine issues)
description: |
A small ufbx project which reproduces the issue. Highly recommended to speed up troubleshooting.
Drag and drop a ZIP archive to upload it.
validations:
required: false

- type: input
attributes:
label: Using a released version?
description: |
"Yes" if you have downloaded an official build, or if you exported the project yourself.
"No" if you are running the project folder or running directly from the editor.
"Both" if you have tested and it happens both when export and when run from project.
This is important because some bugs only happen on released builds, and cannot be reproduced from the editor.
validations:
required: true

- type: input
attributes:
label: What OS? Any other relevant information? (godot-ufbx revision, Godot revision, System information)
description: >
At a minimum, specify the OS (Windows, Linux).
Please make sure you are reasonably up to date before reporting issues.
If you are not on the latest, include the last set of numbers on the bottom corner of the main screen. (or git commit hash)
For graphics-related issues, specify the GPU model, driver version, and the rendering backend (GLES2, GLES3, Vulkan).
placeholder: Windows, 65.78, NVidia
validations:
required: true
1 change: 1 addition & 0 deletions modules/fbx/.github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
33 changes: 33 additions & 0 deletions modules/fbx/.github/ISSUE_TEMPLATE/feature_proposal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: Feature request or design proposal
description: Add anything here you would like to see added or addressed in godot-ufbx, that isn't necessarily a bug or fault.
labels: [enhancement]
body:

- type: textarea
attributes:
label: Describe the proposed feature and how it helps to overcome a problem or limitation
placeholder: Example - "The 3D selection tools are cumbersome to use."
validations:
required: true

- type: textarea
attributes:
label: Other information about your context or usecase.
description: Describe the problem or limitation you have encountered, e.g., in free form using two to three sentences. You may want to articulate the problem in the form of a question.
placeholder: Example - "Playing a 3D space game with heavy use of cut-out animation"
validations:
required: false

- type: textarea
attributes:
label: If known, describe how your proposal will work, with code, pseudo-code, mock-ups, or diagrams
placeholder: Example - "When the user presses Ctrl + Shift + G, select all nodes that have the group..."
validations:
required: false

- type: textarea
attributes:
label: Anything else
placeholder: Other information
validations:
required: false
15 changes: 15 additions & 0 deletions modules/fbx/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Godot 4+ specific ignores
.godot/

# Godot-specific ignores
.import/
export.cfg
export_presets.cfg

# Imported translations (automatically generated from CSV files)
*.translation

# Mono-specific ignores
.mono/
data_*/
mono_crash.*.json
12 changes: 12 additions & 0 deletions modules/fbx/.gitrepo
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
; DO NOT EDIT (unless you know what you are doing)
;
; This subdirectory is a git "subrepo", and this file is maintained by the
; git-subrepo command. See https://github.com/ingydotnet/git-subrepo#readme
;
[subrepo]
remote = https://github.com/V-Sekai/godot-ufbx.git
branch = main
commit = 83eeee610b4d6696e10d2d27f1d07bdfee2269d3
parent = 96c8b696ddca2c348e0b0d8409ecf5e7deddbcb3
method = merge
cmdver = 0.4.6
21 changes: 21 additions & 0 deletions modules/fbx/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 K. S. Ernest (iFire) Lee

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
28 changes: 28 additions & 0 deletions modules/fbx/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# godot-ufbx
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
[![All Contributors](https://img.shields.io/badge/all_contributors-3-orange.svg?style=flat-square)](#contributors-)
<!-- ALL-CONTRIBUTORS-BADGE:END -->

## Contributors ✨

Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tbody>
<tr>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/bqqbarbhg"><img src="https://avatars.githubusercontent.com/u/3875461?v=4?s=100" width="100px;" alt="Samuli"/><br /><sub><b>Samuli</b></sub></a><br /><a href="https://github.com/V-Sekai/godot-ufbx/commits?author=bqqbarbhg" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://chibifire.com"><img src="https://avatars.githubusercontent.com/u/32321?v=4?s=100" width="100px;" alt="K. S. Ernest (iFire) Lee"/><br /><sub><b>K. S. Ernest (iFire) Lee</b></sub></a><br /><a href="https://github.com/V-Sekai/godot-ufbx/commits?author=fire" title="Code">💻</a></td>
<td align="center" valign="top" width="14.28%"><a href="https://github.com/lyuma"><img src="https://avatars.githubusercontent.com/u/39946030?v=4?s=100" width="100px;" alt="lyuma"/><br /><sub><b>lyuma</b></sub></a><br /><a href="https://github.com/V-Sekai/godot-ufbx/commits?author=lyuma" title="Code">💻</a></td>
</tr>
</tbody>
</table>

<!-- markdownlint-restore -->
<!-- prettier-ignore-end -->

<!-- ALL-CONTRIBUTORS-LIST:END -->

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
14 changes: 14 additions & 0 deletions modules/fbx/SCsub
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/usr/bin/env python

Import("env")
Import("env_modules")

env_fbx = env_modules.Clone()

# Godot source files
env_fbx.add_source_files(env.modules_sources, "*.cpp")
env_fbx.add_source_files(env.modules_sources, "structures/*.cpp")
env_fbx.add_source_files(env.modules_sources, "thirdparty/ufbx/ufbx.c")
SConscript("extensions/SCsub")
if env.editor_build:
env_fbx.add_source_files(env.modules_sources, "editor/*.cpp")
25 changes: 25 additions & 0 deletions modules/fbx/config.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
def can_build(env, platform):
return not env["disable_3d"]


def configure(env):
pass


def get_doc_classes():
return [
"FBXAnimation",
"FBXDocument",
"FBXDocumentExtension",
"FBXMesh",
"FBXNode",
"FBXSkeleton",
"FBXSkin",
"FBXState",
"FBXTexture",
"EditorSceneFormatImporterUFBX",
]


def get_doc_path():
return "doc_classes"
9 changes: 9 additions & 0 deletions modules/fbx/doc_classes/EditorSceneFormatImporterUFBX.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorSceneFormatImporterUFBX" inherits="EditorSceneFormatImporter" is_experimental="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
</class>
13 changes: 13 additions & 0 deletions modules/fbx/doc_classes/FBXAnimation.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="FBXAnimation" inherits="Resource" is_experimental="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
<members>
<member name="loop" type="bool" setter="set_loop" getter="get_loop" default="false">
</member>
</members>
</class>
59 changes: 59 additions & 0 deletions modules/fbx/doc_classes/FBXDocument.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
<?xml version="1.0" encoding="UTF-8" ?>
<class name="FBXDocument" inherits="Resource" is_experimental="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
<brief_description>
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
<methods>
<method name="append_from_buffer">
<return type="int" enum="Error" />
<param index="0" name="bytes" type="PackedByteArray" />
<param index="1" name="base_path" type="String" />
<param index="2" name="state" type="FBXState" />
<param index="3" name="flags" type="int" default="0" />
<description>
</description>
</method>
<method name="append_from_file">
<return type="int" enum="Error" />
<param index="0" name="path" type="String" />
<param index="1" name="state" type="FBXState" />
<param index="2" name="flags" type="int" default="0" />
<param index="3" name="base_path" type="String" default="&quot;&quot;" />
<description>
</description>
</method>
<method name="append_from_scene">
<return type="int" enum="Error" />
<param index="0" name="node" type="Node" />
<param index="1" name="state" type="FBXState" />
<param index="2" name="flags" type="int" default="0" />
<description>
</description>
</method>
<method name="generate_scene">
<return type="Node" />
<param index="0" name="state" type="FBXState" />
<param index="1" name="bake_fps" type="float" default="30" />
<param index="2" name="trimming" type="bool" default="false" />
<param index="3" name="remove_immutable_tracks" type="bool" default="true" />
<description>
</description>
</method>
<method name="register_fbx_document_extension" qualifiers="static">
<return type="void" />
<param index="0" name="extension" type="FBXDocumentExtension" />
<param index="1" name="first_priority" type="bool" default="false" />
<description>
</description>
</method>
<method name="unregister_fbx_document_extension" qualifiers="static">
<return type="void" />
<param index="0" name="extension" type="FBXDocumentExtension" />
<description>
</description>
</method>
</methods>
</class>
Loading

0 comments on commit 154a20e

Please sign in to comment.