OSDN Git Service

SDL_SensorEvent 新規追加 https://wiki.libsdl.org/SDL_SensorEvent?action=diff
[sdl2referencejp/sdl2referencejp.git] / CategoryForceFeedback.html
index 3bdeab3..c8b6735 100644 (file)
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\r
-<html lang="ja-JP">\r
-<head>\r
-<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">\r
-<meta http-equiv="Content-Style-Type" content="text/css">\r
-<meta name="keywords" content="Simple Directmedia Layer SDL2.0">\r
-<link rel="top" href="index.html" title="\83z\81[\83\80">\r
-<link rel="parent" href="ApiByCategory.html" title="1\82Â\8fã">\r
-<title>SDL2.0 \93ú\96{\8cê\83\8a\83t\83@\83\8c\83\93\83X - \97Í\8ao\83t\83B\81[\83h\83o\83b\83N</title>\r
-</head>\r
-<body>\r
-<a href="index.html">\96Ú\8e\9f</a> - <a href="ApiByCategory.html">API(\8b@\94\\95Ê)</a> - \97Í\8ao\83t\83B\81[\83h\83o\83b\83N\r
-<hr>\r
-<h1>\97Í\8ao\83t\83B\81[\83h\83o\83b\83N</h1>\r
-\83C\83\93\83N\83\8b\81[\83h\83t\83@\83C\83\8b: <a href="http://hg.libsdl.org/SDL/file/default/include/SDL_haptic.h">SDL_haptic.h</a>\r
-<h2>\8aT\97v</h2>\r
-<p>\r
-SDL\83n\83v\83e\83B\83b\83N\83T\83u\83V\83X\83e\83\80\82Í\83n\83v\83e\83B\83b\83N\91\95\92u(\97Í\8ao\91\95\92u)\82ð\88µ\82¤.\r
-</p>\r
-<p>\r
-\8aî\96{\93I\82È\8eg\82¢\95û\82Í\8e\9f\82Ì\92Ê\82è\82Å\82 \82é.\r
-<ol>\r
-<li>\83T\83u\83V\83X\83e\83\80(SDL_INIT_HAPTIC)\82ð\8f\89\8aú\89»\82·\82é\r
-<li>\83n\83v\83e\83B\83b\83N\91\95\92u\82ð\8aJ\82­\r
-<ol>\r
-<li><a href="SDL_HapticOpen.html">SDL_HapticOpen()</a>\82Å\94Ô\8d\86\82ð\8ew\92è\82µ\82Ä\8aJ\82­\r
-<li><a href="SDL_HapticOpenFromJoystick.html">SDL_HapticOpenFromJoystick()</a>\82Å\83W\83\87\83C\83X\83e\83B\83b\83N\82ð\8aJ\82­\r
-</ol>\r
-<li>\8cø\89Ê(<a href="SDL_HapticEffect.html">SDL_HapticEffect</a>)\82ð\90\90¬\82·\82é\r
-<li>\8cø\89Ê\82ð<a href="SDL_HapticNewEffect.html">SDL_HapticNewEffect()</a>\82Å\83A\83b\83v\83\8d\81[\83h\82·\82é\r
-<li>\8cø\89Ê\82ð<a href=" SDL_HapticRunEffect.html">SDL_HapticRunEffect()</a>\82Å\8dÄ\90\82·\82é\r
-<li>(\94C\88Ó) \8cø\89Ê\82ð<a href="SDL_HapticDestroyEffect.html">SDL_HapticDestroyEffect()</a>\82Å\89ð\95ú\82·\82é\r
-<li>\83n\83v\83e\83B\83b\83N\91\95\92u\82ð<a href="SDL_HapticClose.html">SDL_HapticClose()</a>\82Å\95Â\82\82é\r
-</ol>\r
-</p>\r
-<h2>\8d\\91¢\91Ì</h2>\r
-<ol>\r
-<li><a href="SDL_HapticCondition.html">SDL_HapticCondition</a></li>\r
-<li><a href="SDL_HapticConstant.html">SDL_HapticConstant</a></li>\r
-<li><a href="SDL_HapticCustom.html">SDL_HapticCustom</a></li>\r
-<li><a href="SDL_HapticDirection.html">SDL_HapticDirection</a></li>\r
-<li><a href="SDL_HapticEffect.html">SDL_HapticEffect</a></li>\r
-<li><a href="SDL_HapticLeftRight.html">SDL_HapticLeftRight</a></li>\r
-<li><a href="SDL_HapticPeriodic.html">SDL_HapticPeriodic</a></li>\r
-<li><a href="SDL_HapticRamp.html">SDL_HapticRamp</a></li>\r
-</ol>\r
-<h2>\8aÖ\90\94</h2>\r
-<ol>\r
-<li><a href="SDL_HapticClose.html">SDL_HapticClose</a></li>\r
-<li><a href="SDL_HapticDestroyEffect.html">SDL_HapticDestroyEffect</a></li>\r
-<li><a href="SDL_HapticEffectSupported.html">SDL_HapticEffectSupported</a></li>\r
-<li><a href="SDL_HapticGetEffectStatus.html">SDL_HapticGetEffectStatus</a></li>\r
-<li><a href="SDL_HapticIndex.html">SDL_HapticIndex</a></li>\r
-<li><a href="SDL_HapticName.html">SDL_HapticName</a></li>\r
-<li><a href="SDL_HapticNewEffect.html">SDL_HapticNewEffect</a></li>\r
-<li><a href="SDL_HapticNumAxes.html">SDL_HapticNumAxes</a></li>\r
-<li><a href="SDL_HapticNumEffects.html">SDL_HapticNumEffects</a></li>\r
-<li><a href="SDL_HapticNumEffectsPlaying.html">SDL_HapticNumEffectsPlaying</a></li>\r
-<li><a href="SDL_HapticOpen.html">SDL_HapticOpen</a></li>\r
-<li><a href="SDL_HapticOpenFromJoystick.html">SDL_HapticOpenFromJoystick</a></li>\r
-<li><a href="SDL_HapticOpenFromMouse.html">SDL_HapticOpenFromMouse</a></li>\r
-<li><a href="SDL_HapticOpened.html">SDL_HapticOpened</a></li>\r
-<li><a href="SDL_HapticPause.html">SDL_HapticPause</a></li>\r
-<li><a href="SDL_HapticQuery.html">SDL_HapticQuery</a></li>\r
-<li><a href="SDL_HapticRumbleInit.html">SDL_HapticRumbleInit</a></li>\r
-<li><a href="SDL_HapticRumblePlay.html">SDL_HapticRumblePlay</a></li>\r
-<li><a href="SDL_HapticRumbleStop.html">SDL_HapticRumbleStop</a></li>\r
-<li><a href="SDL_HapticRumbleSupported.html">SDL_HapticRumbleSupported</a></li>\r
-<li><a href="SDL_HapticRunEffect.html">SDL_HapticRunEffect</a></li>\r
-<li><a href="SDL_HapticSetAutocenter.html">SDL_HapticSetAutocenter</a></li>\r
-<li><a href="SDL_HapticSetGain.html">SDL_HapticSetGain</a></li>\r
-<li><a href="SDL_HapticStopAll.html">DL_HapticStopAll</a></li>\r
-<li><a href="SDL_HapticStopEffect.html">SDL_HapticStopEffect</a></li>\r
-<li><a href="SDL_HapticUnpause.html">SDL_HapticUnpause</a></li>\r
-<li><a href="SDL_HapticUpdateEffect.html">SDL_HapticUpdateEffect</a></li>\r
-<li><a href="SDL_JoystickIsHaptic.html">SDL_JoystickIsHaptic</a></li>\r
-<li><a href="SDL_MouseIsHaptic.html">SDL_MouseIsHaptic</a></li>\r
-<li><a href="SDL_NumHaptics.html">SDL_NumHaptics</a></li>\r
-</ol>\r
-<h2>SDL Wiki\82Ö\82Ì\83\8a\83\93\83N</h2>\r
-<a href="https://wiki.libsdl.org/CategoryForceFeedback">Force Feedback Support - SDL Wiki</a>\r
-<hr>\r
-</body>\r
-</html>\r
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="ja-JP">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<meta name="keywords" content="Simple Directmedia Layer SDL2.0">
+<link rel="top" href="index.html" title="\83z\81[\83\80">
+<link rel="parent" href="ApiByCategory.html" title="1\82Â\8fã">
+<title>\97Í\8ao\83t\83B\81[\83h\83o\83b\83N</title>
+</head>
+<body>
+<a href="index.html">\96Ú\8e\9f</a> - <a href="ApiByCategory.html">API(\8b@\94\\95Ê)</a> - \97Í\8ao\83t\83B\81[\83h\83o\83b\83N
+<hr>
+<h1>\97Í\8ao\83t\83B\81[\83h\83o\83b\83N</h1>
+\83C\83\93\83N\83\8b\81[\83h\83t\83@\83C\83\8b: <a href="http://hg.libsdl.org/SDL/file/default/include/SDL_haptic.h">SDL_haptic.h</a>
+<h2>\8aT\97v</h2>
+<p>
+SDL\83n\83v\83e\83B\83b\83N\83T\83u\83V\83X\83e\83\80\82Í\83n\83v\83e\83B\83b\83N\83f\83o\83C\83X(\97Í\8ao\91\95\92u)\82ð\88µ\82¤.
+</p>
+<p>
+\8aî\96{\93I\82È\8eg\82¢\95û\82Í\8e\9f\82Ì\92Ê\82è\82Å\82 \82é.
+<ol>
+<li>\83T\83u\83V\83X\83e\83\80(SDL_INIT_HAPTIC)\82ð\8f\89\8aú\89»\82·\82é
+<li>\83n\83v\83e\83B\83b\83N\83f\83o\83C\83X\82ð\8aJ\82­
+<ul>
+<li><a href="SDL_HapticOpen.html">SDL_HapticOpen()</a>\82Å\94Ô\8d\86\82ð\8ew\92è\82µ\82Ä\8aJ\82­
+<li><a href="SDL_HapticOpenFromJoystick.html">SDL_HapticOpenFromJoystick()</a>\82Å\83W\83\87\83C\83X\83e\83B\83b\83N\82©\82ç\8aJ\82­
+</ul>
+<li>\8cø\89Ê(<a href="SDL_HapticEffect.html">SDL_HapticEffect</a>)\82ð\90\90¬\82·\82é
+<li>\8cø\89Ê\82ð<a href="SDL_HapticNewEffect.html">SDL_HapticNewEffect()</a>\82Å\83A\83b\83v\83\8d\81[\83h\82·\82é
+<li>\8cø\89Ê\82ð<a href="SDL_HapticRunEffect.html">SDL_HapticRunEffect()</a>\82Å\8dÄ\90\82·\82é
+<li>(\94C\88Ó) \8cø\89Ê\82ð<a href="SDL_HapticDestroyEffect.html">SDL_HapticDestroyEffect()</a>\82Å\89ð\95ú\82·\82é
+<li>\83n\83v\83e\83B\83b\83N\83f\83o\83C\83X\82ð<a href="SDL_HapticClose.html">SDL_HapticClose()</a>\82Å\95Â\82\82é
+</ol>
+</p>
+<h2>\83T\83\93\83v\83\8b\83R\81[\83h</h2>
+<h3>\90U\93®\82³\82¹\82é\8aÈ\92P\82È\97á</h3>
+<p>
+<code>
+<pre>
+SDL_Haptic *haptic;
+
+// \83f\83o\83C\83X\82ð\8aJ\82­
+haptic = SDL_HapticOpen( 0 );
+if (haptic == NULL)
+   return -1;
+
+// \92P\8f\83\82È\90U\93®\82Å\8f\89\8aú\89»\82·\82é
+if (SDL_HapticRumbleInit( haptic ) != 0)
+   return -1;
+
+// 50%\82Ì\8b­\82³\82Å2\95b\8aÔ\8dÄ\90\82·\82é
+if (SDL_HapticRumblePlay( haptic, 0.5, 2000 ) != 0)
+   return -1;
+SDL_Delay( 2000 );
+
+// \8fI\97¹\82·\82é
+SDL_HapticClose( haptic );
+</pre>
+</code>
+</p>
+<h3>\8a®\91S\82È\83R\81[\83h</h3>
+<p>
+<code>
+<pre>
+int test_haptic( SDL_Joystick * joystick ) {
+ SDL_Haptic *haptic;
+ SDL_HapticEffect effect;
+ int effect_id;
+
+ // \83f\83o\83C\83X\82ð\8aJ\82­
+ haptic = SDL_HapticOpenFromJoystick( joystick );
+ if (haptic == NULL) return -1; // \83W\83\87\83C\83X\83e\83B\83b\83N\82É\83n\83v\83e\83B\83b\83N\82ª\82È\82¢
+
+ // \83T\83C\83\93\94g\82ª\89Â\94\\82©\92²\82×\82é
+ if ((SDL_HapticQuery(haptic) & SDL_HAPTIC_SINE)==0) {
+  SDL_HapticClose(haptic); // \83T\83C\83\93\8cø\89Ê\82ª\82È\82¢
+  return -1;
+ }
+
+ // \8cø\89Ê\82ð\90\90¬\82·\82é
+ SDL_memset( &effect, 0, sizeof(SDL_HapticEffect) ); // \88À\91S\82Ì\82½\82ß\83f\83t\83H\83\8b\83g\82ð0\82É\82·\82é
+ effect.type = SDL_HAPTIC_SINE;
+ effect.periodic.direction.type = SDL_HAPTIC_POLAR; // \8bÉ\8dÀ\95W\8cn
+ effect.periodic.direction.dir[0] = 18000; // \8cø\89Ê\82Í\93ì\82©\82ç\97\88\82é
+ effect.periodic.period = 1000; // 1000\83~\83\8a\95b
+ effect.periodic.magnitude = 20000; // 20000/32767 \82Ì\8b­\82³
+ effect.periodic.length = 5000; // 5\95b\8aÔ
+ effect.periodic.attack_length = 1000; // 1\95b\8aÔ\82Å\8dÅ\91å\82É\92B\82·\82é
+ effect.periodic.fade_length = 1000; // 1\95b\8aÔ\82Å\92â\8e~\82·\82é
+
+ // \8cø\89Ê\82ð\83A\83b\83v\83\8d\81[\83h\82·\82é
+ effect_id = SDL_HapticNewEffect( haptic, &effect );
+
+ // \8cø\89Ê\82ð\83e\83X\83g\82·\82é
+ SDL_HapticRunEffect( haptic, effect_id, 1 );
+ SDL_Delay( 5000); // \8cø\89Ê\82ª\8fI\82í\82é\82Ü\82Å\91Ò\82Â
+
+ // \8cø\89Ê\82ð\94j\8aü\82·\82é. \82±\82ê\82Í\83f\83o\83C\83X\82ð\95Â\82\82Ä\82à\8ds\82í\82ê\82é
+ SDL_HapticDestroyEffect( haptic, effect_id );
+
+ // \83f\83o\83C\83X\82ð\95Â\82\82é
+ SDL_HapticClose(haptic);
+
+ return 0; // \90¬\8c÷
+}
+</pre>
+</code>
+</p>
+<p>
+\82±\82ÌEdgar Simo Serra\82Ìblog\82É\82³\82ç\82È\82é\8fî\95ñ\82ª\82 \82é: <a href="http://bobbens.dyndns.org/journal/2010/sdl_haptic/">SDL Haptic In Depth</a> (<a href="https://web.archive.org/web/20130728040700/http://bobbens.dyndns.org/journal/2010/sdl_haptic/">\83A\81[\83J\83C\83u</a>)
+</p>
+<h2>\8d\\91¢\91Ì</h2>
+<ol>
+<li><a href="SDL_HapticCondition.html">SDL_HapticCondition</a></li>
+<li><a href="SDL_HapticConstant.html">SDL_HapticConstant</a></li>
+<li><a href="SDL_HapticCustom.html">SDL_HapticCustom</a></li>
+<li><a href="SDL_HapticDirection.html">SDL_HapticDirection</a></li>
+<li><a href="SDL_HapticEffect.html">SDL_HapticEffect</a></li>
+<li><a href="SDL_HapticLeftRight.html">SDL_HapticLeftRight</a></li>
+<li><a href="SDL_HapticPeriodic.html">SDL_HapticPeriodic</a></li>
+<li><a href="SDL_HapticRamp.html">SDL_HapticRamp</a></li>
+</ol>
+<h2>\8aÖ\90\94</h2>
+<ol>
+<li><a href="SDL_HapticClose.html">SDL_HapticClose</a></li>
+<li><a href="SDL_HapticDestroyEffect.html">SDL_HapticDestroyEffect</a></li>
+<li><a href="SDL_HapticEffectSupported.html">SDL_HapticEffectSupported</a></li>
+<li><a href="SDL_HapticGetEffectStatus.html">SDL_HapticGetEffectStatus</a></li>
+<li><a href="SDL_HapticIndex.html">SDL_HapticIndex</a></li>
+<li><a href="SDL_HapticName.html">SDL_HapticName</a></li>
+<li><a href="SDL_HapticNewEffect.html">SDL_HapticNewEffect</a></li>
+<li><a href="SDL_HapticNumAxes.html">SDL_HapticNumAxes</a></li>
+<li><a href="SDL_HapticNumEffects.html">SDL_HapticNumEffects</a></li>
+<li><a href="SDL_HapticNumEffectsPlaying.html">SDL_HapticNumEffectsPlaying</a></li>
+<li><a href="SDL_HapticOpen.html">SDL_HapticOpen</a></li>
+<li><a href="SDL_HapticOpenFromJoystick.html">SDL_HapticOpenFromJoystick</a></li>
+<li><a href="SDL_HapticOpenFromMouse.html">SDL_HapticOpenFromMouse</a></li>
+<li><a href="SDL_HapticOpened.html">SDL_HapticOpened</a></li>
+<li><a href="SDL_HapticPause.html">SDL_HapticPause</a></li>
+<li><a href="SDL_HapticQuery.html">SDL_HapticQuery</a></li>
+<li><a href="SDL_HapticRumbleInit.html">SDL_HapticRumbleInit</a></li>
+<li><a href="SDL_HapticRumblePlay.html">SDL_HapticRumblePlay</a></li>
+<li><a href="SDL_HapticRumbleStop.html">SDL_HapticRumbleStop</a></li>
+<li><a href="SDL_HapticRumbleSupported.html">SDL_HapticRumbleSupported</a></li>
+<li><a href="SDL_HapticRunEffect.html">SDL_HapticRunEffect</a></li>
+<li><a href="SDL_HapticSetAutocenter.html">SDL_HapticSetAutocenter</a></li>
+<li><a href="SDL_HapticSetGain.html">SDL_HapticSetGain</a></li>
+<li><a href="SDL_HapticStopAll.html">SDL_HapticStopAll</a></li>
+<li><a href="SDL_HapticStopEffect.html">SDL_HapticStopEffect</a></li>
+<li><a href="SDL_HapticUnpause.html">SDL_HapticUnpause</a></li>
+<li><a href="SDL_HapticUpdateEffect.html">SDL_HapticUpdateEffect</a></li>
+<li><a href="SDL_JoystickIsHaptic.html">SDL_JoystickIsHaptic</a></li>
+<li><a href="SDL_MouseIsHaptic.html">SDL_MouseIsHaptic</a></li>
+<li><a href="SDL_NumHaptics.html">SDL_NumHaptics</a></li>
+</ol>
+<h2>SDL Wiki\82Ö\82Ì\83\8a\83\93\83N</h2>
+<a href="https://wiki.libsdl.org/CategoryForceFeedback">Force Feedback Support - SDL Wiki</a>
+<hr>
+</body>
+</html>