{"id":26064599,"url":"https://github.com/mobuos/godot-android-haptics","last_synced_at":"2025-04-11T14:10:45.620Z","repository":{"id":268133916,"uuid":"902466403","full_name":"Mobuos/godot-android-haptics","owner":"Mobuos","description":"Godot plugin that adds support to rich haptics on Android devices","archived":false,"fork":false,"pushed_at":"2025-01-14T19:29:09.000Z","size":394,"stargazers_count":5,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-25T10:21:22.246Z","etag":null,"topics":["android","godot","godot4","haptics"],"latest_commit_sha":null,"homepage":"https://godotengine.org/asset-library/asset/3570","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Mobuos.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":"2024-12-12T16:10:52.000Z","updated_at":"2025-02-12T14:24:57.000Z","dependencies_parsed_at":"2024-12-14T16:19:15.697Z","dependency_job_id":"f1ee9bad-f5b9-4414-96a1-c76cab9cff0b","html_url":"https://github.com/Mobuos/godot-android-haptics","commit_stats":null,"previous_names":["mobuos/godot-android-haptics"],"tags_count":1,"template":false,"template_full_name":"m4gr3d/Godot-Android-Plugin-Template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mobuos%2Fgodot-android-haptics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mobuos%2Fgodot-android-haptics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mobuos%2Fgodot-android-haptics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mobuos%2Fgodot-android-haptics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mobuos","download_url":"https://codeload.github.com/Mobuos/godot-android-haptics/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248414092,"owners_count":21099414,"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":["android","godot","godot4","haptics"],"created_at":"2025-03-08T18:41:40.296Z","updated_at":"2025-04-11T14:10:45.593Z","avatar_url":"https://github.com/Mobuos.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Godot Android Haptics Plugin\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/c8882560-6939-4f73-a0bd-38e5de9000bf\" /\u003e\n\u003c/p\u003e\n\nA plugin to add support to [clear](https://developer.android.com/develop/ui/views/haptics/haptics-principles#clear_haptics) and [rich](https://developer.android.com/develop/ui/views/haptics/haptics-principles#rich_haptics) haptics, as opposed to the default [buzzy](https://developer.android.com/develop/ui/views/haptics/haptics-principles#buzzy_haptics) haptics that [Godot offers](https://docs.godotengine.org/en/stable/classes/class_input.html#class-input-method-vibrate-handheld).\n\n## Installation\nGrab the zipped `addons.zip` from releases, and unzip its contents into the root folder of your project. After that you should be able to enable the plugin in Project -\u003e Project Settings -\u003e Plugins. Also make sure the \"Vibrate\" permission is allowed in Project -\u003e Export / Android window.\n\nYou can also now install directly through Godot, as this plugin is available on the Asset Store! Just note it might not be the most up-to-date version :)\n\n## Usage\nCheck `haptics_wrapper.gd`, but in short:\n```gdscript\n\nhaptics = AndroidHaptics.new()\nhaptics.vibratePrimitive(AndroidHaptics.Primitive.THUD, 0.5) # primitive, intensity\nhaptics.vibrateEffect(AndroidHaptics.Effect.TICK) # effect\nhaptics.Composition.new()\\\n    .addPrimitive(AndroidHaptics.Primitive.SLOW_RISE, 1.0)\\\n    .addPrimitive(AndroidHaptics.Primitive.THUD, 1.0, 500)\\ \n    .vibrate() # primitive, intensity, delay(ms)\n```\n\n## Recommendations\nThere's likely no better resource than the Android documentation itself: https://developer.android.com/develop/ui/views/haptics.\nMost functions provided here will work very similarly to the ones used in native Android code. Not only that, the high level concepts can be easily re-used as well:\n\n\u003e At a high level, the design guidelines can be summarized as:\n\u003e \n\u003e - Favor rich and clear haptics over buzzy haptics.\n\u003e - Be consistent, both with the system and the app design.\n\u003e - Be mindful of frequency of use, and importance.\n\n## Building \nCheck https://github.com/m4gr3d/Godot-Android-Plugin-Template and https://docs.godotengine.org/en/stable/tutorials/platform/android/android_plugin.html.\n\nThe final output should be in `demo/addons/GodotAndroidHaptics`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobuos%2Fgodot-android-haptics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmobuos%2Fgodot-android-haptics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobuos%2Fgodot-android-haptics/lists"}