{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/sitcom-crafter-a-plot-driven-human-motion","title":"Sitcom-Crafter: A Plot-Driven Human Motion Generation System in 3D Scenes","arxiv_id":"2410.10790","date":"2024-10-14","proceeding":null,"authors":["Jianqi Chen","Panwen Hu","Xiaojun Chang","Zhenwei Shi","Michael Christian Kampffmeyer","Xiaodan Liang"],"abstract":"Recent advancements in human motion synthesis have focused on specific types of motions, such as human-scene interaction, locomotion or human-human interaction, however, there is a lack of a unified system capable of generating a diverse combination of motion types. In response, we introduce Sitcom-Crafter, a comprehensive and extendable system for human motion generation in 3D space, which can be guided by extensive plot contexts to enhance workflow efficiency for anime and game designers. The system is comprised of eight modules, three of which are dedicated to motion generation, while the remaining five are augmentation modules that ensure consistent fusion of motion sequences and system functionality. Central to the generation modules is our novel 3D scene-aware human-human interaction module, which addresses collision issues by synthesizing implicit 3D Signed Distance Function (SDF) points around motion spaces, thereby minimizing human-scene collisions without additional data collection costs. Complementing this, our locomotion and human-scene interaction modules leverage existing methods to enrich the system's motion generation capabilities. Augmentation modules encompass plot comprehension for command generation, motion synchronization for seamless integration of different motion types, hand pose retrieval to enhance motion realism, motion collision revision to prevent human collisions, and 3D retargeting to ensure visual fidelity. Experimental evaluations validate the system's ability to generate high-quality, diverse, and physically realistic motions, underscoring its potential for advancing creative workflows.","url_abs":"https://arxiv.org/abs/2410.10790v1","url_pdf":"https://arxiv.org/pdf/2410.10790v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"sitcom-crafter-a-plot-driven-human-motion","repo_url":"https://github.com/windvchen/sitcom-crafter","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"motion-generation","task_name":"Motion Generation"},{"task_slug":"motion-synthesis","task_name":"Motion Synthesis"},{"task_slug":"pose-retrieval","task_name":"Pose Retrieval"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2410.10790","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2410.10790"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/windvchen/sitcom-crafter","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":4,"unverified":2},"by_repo_kind":{"official":{"samples":6,"ran":4,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"98ade68f736c5ee6","entry":"calculate_mean_std","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/cal_dataset_std_mean.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/cal_dataset_std_mean.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"98ade68f736c5ee6"}},{"code_sha256_prefix":"f36ca59fdf394f46","entry":"convert","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/custom_visualize.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/custom_visualize.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f36ca59fdf394f46"}},{"code_sha256_prefix":"71200664dd229f70","entry":"deep_copy_npz","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/custom_visualize.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/custom_visualize.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"71200664dd229f70"}},{"code_sha256_prefix":"be401eecfad91ecc","entry":"rigid_transform_3D","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/intergen_processed_to_custom.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/intergen_processed_to_custom.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"be401eecfad91ecc"}},{"code_sha256_prefix":"ea2e64331ead8516","entry":"calc_sdf","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/eval-long-story.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/eval-long-story.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ea2e64331ead8516"}},{"code_sha256_prefix":"7a2df07c0a706f44","entry":"smplh2smplx","repo":"windvchen/sitcom-crafter","repo_kind":"official","path":"HHInter/determine_marker_ids.py","file_url":"https://github.com/windvchen/sitcom-crafter/blob/HEAD/HHInter/determine_marker_ids.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"7a2df07c0a706f44"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}