{"id":1607,"date":"2016-08-17T03:34:04","date_gmt":"2016-08-16T19:34:04","guid":{"rendered":"http:\/\/www.clonefactor.com\/wordpress\/?page_id=1607"},"modified":"2016-08-17T16:37:27","modified_gmt":"2016-08-17T08:37:27","slug":"camerabot-clamp-angle-section-setup","status":"publish","type":"page","link":"https:\/\/www.clonefactor.com\/wordpress\/unity3d-show-room\/camerabot\/camerabot-clamp-angle-section-setup\/","title":{"rendered":"CameraBot Clamp angle section setup"},"content":{"rendered":"<p><iframe loading=\"lazy\" title=\"CameraBot ver 3.0, Clamp angle section setup\" width=\"1260\" height=\"945\" src=\"https:\/\/www.youtube.com\/embed\/8Pk4YITNrUs?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe><\/p>\n<p>This session is made for the clamp angle of camera, the panel you may visualize in video will look like this:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1608\" src=\"http:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle.jpg\" alt=\"clamp_angle\" width=\"543\" height=\"368\" srcset=\"https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle.jpg 543w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle-300x203.jpg 300w\" sizes=\"auto, (max-width: 543px) 100vw, 543px\" \/><\/p>\n<p>&#8220;Forward Reference&#8221;<br \/>\nwhen this parameter was set, developer will allow to override the &#8220;facing direction&#8221; of chase target,<br \/>\ne.g. During chase target facing South direction, giving the transform facing North-East, CameraBot will assume the chase target facing North-East instead of South. this feature allow developer to override the direction of current chase target.<br \/>\nit also affect the clamp angle, because the clamp angle and depend on the chase target forward as a reference to locate their current related angle with chase target.<\/p>\n<p>&#8220;Rotation Reference&#8221;<br \/>\nthe possible values for these parameter are { World, Local, Real Local, Custom }<\/p>\n<ul>\n<li>World &#8211; the camera upward will always pointing world&#8217;s upward, it&#8217;s the fastest way and lowest performance cost<\/li>\n<li>Real Local &#8211; the camera upward will depend on rotate angle, low performance cost and also fixed the &#8220;Gimbal lock&#8221; issue.<br \/>\nthe problem to using this setting, are combine with chase target &amp; camera offset, when camera are far away from the orbit camera idea position, when user rotate the camera they may notify the camera result in &#8220;tilt angle&#8221;, or they will feel\u00a0dizzy (Off-vertical axis rotation) when they rotate or move very fast.<br \/>\nGimbal lock :=\u00a0<a href=\"https:\/\/en.wikipedia.org\/wiki\/Gimbal_lock\">https:\/\/en.wikipedia.org\/wiki\/Gimbal_lock<br \/>\n<\/a>Gimbal lock on youtube : <a href=\"https:\/\/www.youtube.com\/watch?v=zc8b2Jo7mno\">https:\/\/www.youtube.com\/watch?v=zc8b2Jo7mno<br \/>\n<\/a>Polygon :\u00a0<a href=\"http:\/\/www.polygon.com\/2013\/10\/26\/4862474\/video-games-and-motion-sickness-dying-light-techland-fps\">How developers are trying to solve motion sickness in video games<\/a><\/li>\n<li>Local &#8211; the setting will mix &#8220;Real Local&#8221; &amp; &#8220;World up&#8221; solution, to perform a relative stable upward direction for the camera. but it take higher perform cost.<\/li>\n<li>Custom &#8211; you can design your own upward reference to implement your solution.<\/li>\n<\/ul>\n<p>&#8220;Left\/Right range&#8221; &#8211; &#8220;Up\/Down range&#8221;<br \/>\nin &#8220;<strong>Editor mode<\/strong>&#8221; preset will record the\u00a0position and angle related to the chase target as the origin orbit position.<br \/>\ntherefore the Left &amp; Right direction are based on your orbit setup, Left &amp; Right will represent the angle by transparent color in red,<br \/>\nand Up &amp; Down represent the angle by transparent color in blue.<br \/>\nas the image shown below. (Left = 45 degree, Right = 180 degree, both related to the origin\u00a0angle.<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-1626\" src=\"http:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle_example.png\" alt=\"clamp_angle_example\" width=\"1454\" height=\"583\" srcset=\"https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle_example.png 1454w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle_example-300x120.png 300w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle_example-768x308.png 768w, https:\/\/www.clonefactor.com\/wordpress\/wp-content\/uploads\/2016\/08\/clamp_angle_example-1024x411.png 1024w\" sizes=\"auto, (max-width: 1454px) 100vw, 1454px\" \/><br \/>\nIn &#8220;<strong>Runtime<\/strong>&#8221; the player will only allow to drag or move the camera within the color area. the same logic apply on vertical (Up\/Down axis)<\/p>\n<p>\u201cEnable Rebound&#8221;<br \/>\nThe major feature for clamp angle\u00a0section, to toggle rebound feature.<br \/>\nby enable this feature, developer will allow to control the camera behavior: when and how to return it\u00a0origin angle\u00a0of\u00a0orbit camera.<\/p>\n<p>\u201cRebound Delay&#8221;<br \/>\nThe delay time to trigger rebound action for the camera angle. Each time player start input or calling UpdatePosition() APi, will reset the count down of rebound.<br \/>\nRebound will start to count down based on this delay values, right after the\u00a0player stop the input stream. (stop control camera\u00a0angle)<br \/>\nafter count down finish the rebound process will start.<br \/>\nE.g. Rebound Delay = 1.3, is representing after player stop input stream and wait 1.3 seconds, the rebound process will start.<\/p>\n<p>\u201cRebound Period&#8221;<br \/>\nHow long it will take from current distance to travel back to origin distance, unit on second(s).<\/p>\n<p>\u201cRebound Curve&#8221;<br \/>\nThe motion will based on this value. from left to right, current distance\u00a0should be Zero (0.0f), and origin distance should be One (1.0f)<br \/>\nthe animation curve time length\u00a0will scale based on \u201cRebound Period&#8221;, we recommend alway setting this animation curve<br \/>\ntime := within 0 ~ 1 seconds,<br \/>\nvalue := within\u00a00 ~ 1 units.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This session is made for the clamp angle of camera &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1250,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"full-width-page.php","meta":{"footnotes":""},"class_list":["post-1607","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/pages\/1607","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/comments?post=1607"}],"version-history":[{"count":0,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/pages\/1607\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/pages\/1250"}],"wp:attachment":[{"href":"https:\/\/www.clonefactor.com\/wordpress\/wp-json\/wp\/v2\/media?parent=1607"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}