so far, most of the computer keyboard is a simple input device, even RGB color backlit keyboard and programmable keyboard can only be very limited personal customization. Now, a product called "Protean", known as "the world's first real-time feedback gaming keyboard," is currently being crowdfunded. Each of its buttons has a small display embedded in it. Users can not only modify the layout and function of the buttons, but also create their own unique interface and allow the events in the game to generate real-time visual feedback directly on the keyboard.
Var related_video_info = { vid: 'm00211mq5mv', cid: '', url: 'http://v.qq.com/page/m/m/v/m00211mq5mv.html', pic: 'http://vpic. Video.qq.com/68148841/m00211mq5mv_ori_1.jpg', title: 'Fully-customizable real-time feedback gaming keyboard' };.rv-root-v2{font-family:"\5FAE\8F6F\96C5\9ED1", Sans-serif;color:000}.rv-root-v2 a{text-decoration:none;color:000}.rv-root-v2 h1,.rv-root-v2 h2,.rv-root-v2 h3, .rv-root-v2 ol,.rv-root-v2 p,.rv-root-v2 ul{display:block;padding:0;margin:0}.rv-root-v2 img{border:0}.rv -root-v2 .rv-cf:after,.rv-root-v2 .rv-cf:before{content:" ";display:table}.rv-root-v2 .rv-cf:after{clear:both} .rv-root-v2 .rv-cf{zoom:1}.rv-root-v2 .rv-top{height:40px;line-height:40px;background-color:f3f3f3}.rv-root-v2 .rv -top .rv-fold-btn{float:right;padding-left:20px;margin-right:16px;font-size:14px;background-image:url(http://mat1.gtimg.com/news/dc /images/fold.png);background-position:left center;background-repeat:no-repeat}.rv-root-v2 .rv-top .rv-autoplay{float:right;width:110px;margin-right: 16px} .rv-root-v2 .rv-top .rv-autoplay span{font-size:14px;float:right}.rv-root-v2 .rv-top .rv-autoplay a{float:right;display:block; Width:32px;height:18px;padding:2px;margin-top:10px;margin-left:12px;border-radius:10px;font-size:0;text-indent:-9999px;cursor:pointer;background-color :CCC;transition:background .3s ease-out}.rv-root-v2 .rv-top .rv-autoplay ai{display:block;width:18px;height:18px;border-radius:50%;background-color :fff;margin-left:0;box-shadow:1px 1px 3px rgba(0,0,0,.6);transition:all .3s ease-out}.rv-root-v2 .rv-top .rv- Autoplay a:hover{background-color:d9d9d9}.rv-root-v2 .rv-top .rv-autoplay a.enabled{background-color:006cb7}.rv-root-v2 .rv-top .rv-autoplay a .enabled i{margin-left:14px}.rv-root-v2 .rv-top .rv-autoplay a.enabled:hover{background-color:007bd1}.rv-root-v2 .rv-top .rv-autoplay a:active i{box-shadow:none}.rv-root-v2 .rv-top .rv-title{overflow:hidden}.rv-root-v2 .rv-top .rv-title a{display:block; Font-size:18px;font-weight:400;text-indent:12px;white-space:nowrap;text-o Verflow:ellipsis;overflow:hidden;color:000}.rv-root-v2 .rv-top .rv-title a:hover{color:cd0000;text-decoration:underline}.rv-root-v2 .rv-middle .rv-player{position:relative;min-height:360px;padding-bottom:18px}.rv-root-v2 .rv-middle .rv-player .rv-player-adjust-img{width:100%;visibility :hidden;font-size:0}.rv-root-v2 .rv-middle .rv-player .rv-player-adjust-img img{width:100%;vertical-align:top;max-width:2000px! Important;min-width:0!important}.rv-root-v2 .rv-middle .rv-player .rv-player-wrap{position:absolute;width:100%;height:100%;top:0;left :0;background-color:000;box-shadow:inset 0 0 20px rgba(0,0,0,.6)}.rv-root-v2 .rv-middle .rv-player .rv-player-wrap . Rv-player-mod{position:relative;width:100%;height:100%}.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mod .rv-player -loading{width:100%;height:100%;text-align:center;color:999;font-family:verdana,arial,sans-serif}.rv-root-v2 .rv-middle .rv-player . Rv-player-wrap .rv-player-mod .tvp_titles{display:none}.rv-root-v2 .rv-middl e .rv-player .rv-player-wrap .rv-player-mini-ctrl{display:none;position:absolute;right:0;z-index:99;bottom:18px;width:30px}.rv-root -v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-close,.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv- Player-mini-ctrl-mute,.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-resize{display:block;margin-top:3px;width :30px;height:30px;line-height:30px;background-color:000;background-color:rgba(0,0,0,.6);background-image:url(http://mat1.gtimg.com /news/dc/images/rv_mini_sprites_v2.png);background-repeat:no-repeat;text-align:center}.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player -mini-ctrl-close:hover,.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-mute:hover,.rv-root-v2 .rv -middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-resize:hover{color:FFF;background-color:000;background-color:rgba(0,0,0,.9) }.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-mute,.rv-root -v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-mute.mute-off{background-position:0 -150px}.rv-root-v2 .rv-middle . Rv-player .rv-player-wrap .rv-player-mini-ctrl-mute.mute-on{background-position:0 -180px}.rv-root-v2 .rv-middle .rv-player .rv-player -wrap .rv-player-mini-ctrl-close{background-position:0 0}.rv-root-v2 .rv-middle .rv-player .rv-player-wrap .rv-player-mini-ctrl-resize {background-position:0 -30px}.rv-root-v2 .rv-middle .rv-player .rv-player-mini{position:fixed;width:270px;height:170px;left:0;bottom:0; Top:auto;z-index:99;box-shadow:0 0 3px rgba(0,0,0,.3)}.rv-root-v2 .rv-middle .rv-player .rv-player-mini . Rv-player-mini-ctrl{display:block}@media only screen and (min-width:1300px){.rv-root-v2 .rv-middle .rv-player .rv-player-mini.rv-player- Mini-sp1{left:50%;margin-left:-692px}}.rv-root-v2 .rv-middle .rv-player .rv-player-mini.rv-player-mini-big{width:640px; Height:378px}.rv-root-v2 .rv-middle .rv-player .rv-player-mini.rv-player-mini-big .rv-player-mini-ctrl-resiz e{background-position:0 -60px}.rv-root-v2 .rv-middle .rv-playlist{height:100px;background-color:2f2f2f}.rv-root-v2 .rv-middle .rv-playlist . Rv-playlist-ctrl{position:relative;width:100%;height:0;z-index:2}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-ctrl a{display:block ;position:absolute;top:0;width:17px;height:100px;line-height:100px;font-size:14px;font-weight:700;font-family:NanumMyeongjo,"\5B8B\4F53",sans- Serif;text-align:center;color:a3a3a3;background-color:2f2f2f;background-color:rgba(47,47,47,.8);cursor:pointer}.rv-root-v2 .rv-middle .rv -playlist .rv-playlist-ctrl a:hover{background-color:494949;background-color:rgba(73,73,73,.8)}.rv-root-v2 .rv-middle .rv-playlist .rv -playlist-ctrl a.disabled{cursor:not-allowed;color:505050}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-ctrl a.disabled:hover{background-color:2f2f2f; Background-color:rgba(47,47,47,.8);box-shadow:none}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-ctrl .prev{left:0}. Rv-root-v2 .rv-middle .rv-playlist .rv-pl Aylist-ctrl .next{right:0}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap{height:100px;width:100%;overflow:hidden;position:relative;z- Index:1}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller{height:130px;width:100%;overflow-y:hidden;overflow-x: Scroll;-webkit-overflow-scrolling:touch}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list{width:9999px;padding :0 17px;list-style:none}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li{display:block;float :left}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a{display:block;position:relative;width:160px ;height:90px;padding:5px;cursor:pointer}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a img{ Width:100%;height:100%;opacity:0;transition:opacity .3s ease-out;vertical-align:top}.rv-root-v2 .rv-middle .rv-playlist .rv-playli St-wrap .rv-playlist-scroller ol.rv-playlist-list li a div{position:absolute;width:100%;left:0;bottom:0;font-size:12px;line-height:18px}. Rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a div span{display:block;height:18px;margin:5px;padding :5px 10px 2px;overflow:hidden;font-family:Arial,sans-serif;color:ababab;background-color:rgba(0,0,0,.8);-ms-filter:"progid:DXImageTransform.Microsoft .gradient(GradientType=1, StartColorStr='CC000000', EndColorStr='CC000000')";filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=1, StartColorStr='CC000000', EndColorStr='CC000000');-webkit -transition:all .2s ease-out;-moz-transition:all .2s ease-out;-ms-transition:all .2s ease-out;-o-transition:all .2s ease-out;transition:all . 2s ease-out}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a div span:not([dummy]){ Filter:progid:DXImageTransform.Microsoft.Gradient(enabled='false')}.rv-root-v2 .rv-mi Ddle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a.current{background:101010}.rv-root-v2 .rv-middle .rv-playlist .rv- Playlist-wrap .rv-playlist-scroller ol.rv-playlist-list li a.current div span{color:ff6d1a}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv- Playlist-scroller ol.rv-playlist-list li a:hover{background:252525}.rv-root-v2 .rv-middle .rv-playlist .rv-playlist-wrap .rv-playlist-scroller ol.rv-playlist -list li a:hover div span{height:36px}@media only screen and (min-width:1260px){.rv-adjust-wide-article{width:895px;margin-left:-97px}}
Window.dc_related_video={},function(t){t.__author__="jamieyan",t.__version__="2.0.0",t.modName="dc_related_video",t.config={},t.config.autoplay_cookie ={key:"aboutVideo_v",domain:".qq.com",path:"/",expires:90},t.config.playing_cookie={key:"dc_vplaying",domain:".qq.com", Path:"/", expires:function(){return new Date((new Date).getTime()+72e5)}},t.config.mini_unmute={key:"rv_mini_unmute",domain:".qq.com ",path:"/",expires:1},t.sign={},t.sign.qqcomstore=null,t.cache={},t.videos=[],t.dom={},t .control={},t.tvp_player_obj=null}(window.dc_related_video),function(t){var i={},e=function(t,i){var e=document.head||document.getElementsByTagName( "head")[0]||document.documentElement,n=document.createElement("script"),o=!1;n.async=!0,n.src=t,n.onload=n.onreadystatechange= Function(){o||n.readyState&&!/loaded|complete/.test(n.readyState)||(o=!0,n.onload=n.onreadystatechange=null,n.parentNode&&n.parentNode.removeChild(n ),n=null,"function"==typeof i&&i())},e.insertBefore(n,e.firstChild)},n=function(t){t=t||fu Nction(){};var i=!1;if("function"==typeof window.jQuery){var n=window.jQuery().jquery;if("string"==typeof n){var o= N.split(".");3===o.length&&"1"===o[0]&&parseInt(o[1],10)>10&&(i=!0)}}i?t(window .jQuery):e("http://mat1.gtimg.com/libs/jquery/1.12.0/jquery.min.js",function(){t(window.jQuery.noConflict(!0))}) },o=function(t){if(window.tvp)t(window.tvp);else{var i="http://imgcache.qq.com/tencentvideo_v1/tvp/js/tvp.player_v2";i+ =window.jQuery?"_jq.js":".js",e(i,function(){t(window.tvp)})}},a=function(){var t=function(){return t .get.apply(t,arguments)},i=t.utils={isArray:Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t) },isPlainObject:function(t){return!!t&&"[object Object]"===Object.prototype.toString.call(t)},toArray:function(t){return Array.prototype.slice.call( t)},getKeys:Object.keys||function(t){var i=[],e="";for(e in t)t.hasOwnProperty(e)&&i.push(e);return i}, Escape:function(t){return String(t).replace(/[,;"\\=\s%]/g,function(t){return encodeURICompone Nt(t)})}, retrieve:function(t,i){return null===t?i:t}}; return t.defaults={},t.expiresMultiplier=86400,t.set=function( t,e,n){if(i.isPlainObject(t))for(var o in t)t.hasOwnProperty(o)&&this.set(o,t[o],e);else{n=i.isPlainObject (n)?n:{expires:n};var a=void 0!==n.expires?n.expires:this.defaults.expires||"",l=typeof a;"string"===l&& ""!==a?a=new Date(a):"number"===l&&(a=new Date(+new Date+1e3this.expiresMultipliera)),""!==a&&"toGMTString"in a&&( a=";expires="+a.toGMTString());var r=n.path||this.defaults.path;r=r?";path="+r:"";var s=n.domain ||this.defaults.domain;s=s?";domain="+s:"";var u=n.secure||this.defaults.secure?";secure":"";document.cookie=i .escape(t)+"="+i.escape(e)+a+r+s+u}return this},t.remove=function(t){t=i.isArray(t)?t:i .toArray(arguments);for(var e=0,n=t.length;n>e;e++)this.set(t[e],"",-1);return this},t.empty=function () {return this.remove(i.getKeys(this.all()))},t.get=function(t,e){e=e||void 0;var n=this.all();if (i.isArray(t)){for(var o={},a=0,l=t.length;l>a;a++){var r=t[a];o[r]=i .retrieve(n[r],e)}return o}return i.retrieve(n[t],e)},t.all=function(){if(""===document.cookie)return{} ;for(var t=document.cookie.split("; "),i={},e=0,n=t.length;n>e;e++){var o,a,l=t[e] .split("=");try{o=decodeURIComponent(l[0])}catch(r){o=l[0]}try{a=decodeURIComponent(l[1])}catch(r){a =l[1]}i[o]=a}return i},t.enabled=function(){if(navigator.cookieEnabled)return!0;var i="_"===t.set("_ ","_").get("_");return t.remove("_"),i},t}(),l={};l.isTransitionSupport=function(){var t=document. createElement("p").style,i="transition";if("string"==typeof t[i])return!0;var e=["Moz","webkit","Webkit","O ",""ms"];i=i.charAt(0).toUpperCase()+i.substr(1);for(var n=0,o=e.length;o>n;n+=1)if( "string"==typeof t[e[n]+i])return!0;return!1},l.isBorderRadiusSupport="string"==typeof document.createElement("p").style.borderRadius,l. isIe6orLower=function(){var t=document.createElement("div");return t.innerHTML="",!!t.getElementsByTagName("i").length};var r,s=function(t,i ){for(var e=0,n="",o=0;o128?e+=2:e++,n+=t.charAt(o) ,e>=i)return n;return n},u=function(t,i){var e,n,o,a,l,r,s=d(function(){l=a=!1} ,i);return function(){e=this,n=arguments;var u=function(){o=null,l&&(r=t.apply(e,n)),s()};return o| |(o=setTimeout(u,i)),a?l=!0:(a=!0,r=t.apply(e,n)),s(),r}},d=function(t ,i,e){var n,o;return function(){var a=this,l=arguments,r=function(){n=null,e||(o=t.apply(a,l)) },s=e&&!n;return clearTimeout(n),n=setTimeout(r,i),s&&(o=t.apply(a,l)),o}},c=function(){"on" ===window.related_video_debug&&window.console&&console.log("[related_video_log] ",arguments)};window.addEventListener&&window.localStorage&&window.JSON?(document.domain="qq.com",r=function(t){this.id =this._getId(),this._init(t),this._origin=this._getOrigin(t),this._callbacks={_get:{},_set:{},_del:{}},this._bindEvent( }}, r.prototype._getId=function(){return id=0,function(){return++id}}(),r.prototype._init=function(t){var i=this,e=document .createElement("iframe");e.style.display="none",e.src=t,document.body.appendChild(e),this._hub=e.contentWindow,e.onload=functi On(){i.load()}},r.prototype.load=function(){},r.prototype._getOrigin=function(t){var i,e;return i=document.createElement("a" ), i.href=t,e=i.protocol+"//"+i.host},r.prototype._parseMessage=function(t,i,e){return JSON.stringify({method:t,key: i,value:e})},r.prototype._bindEvent=function(){var t=this;window.addEventListener?window.addEventListener("message",function(i){var e=JSON.parse(i. Data),n=e.error,o=e.result&&JSON.parse(e.result)||null;try{t._callbacks["_"+e.method][e.key](n,o)} Catch(a){console.log(a)}},!1):""},r.prototype.get=function(t,i){this._hub.postMessage(this._parseMessage("get",t ), this._origin), this._callbacks._get[t]=i}, r.prototype.set=function(t,i,e){this._hub.postMessage(this._parseMessage("set",t, i), this._origin), this._callbacks._set[t]=e}, r.prototype.del=function(t,i){this._hub.postMessage(this._parseMessage("del",t), This._origin), this._callbacks._del[t]=i}):r=function(){this.set=this.get=this.del=this.load=function(){}},i={ getScript:e,loadJquery:n,loadTvp:o,cookie:a,bro Wser:l, cutstr2:s,throttle:u,debounce:d,debug_log:c,localqq:new r("http://Storageqq.htm")},t.utils=i}(window.dc_related_video),function (t){var i={},e=function(i,e){var n=t.libs.jQuery;return e=e||n.noop,"string"!=typeof i?void e(null ): void n.ajax({method:"GET",url:"http://data.video.qq.com/fcgi-bin/data",data:{tid:"25",idlist:i,appid :"10001009",appkey:"c5a3e1529a7ba805",otype:"json"},dataType:"jsonp",cache:!0,scriptCharset:"utf-8"}).done(function(t){if(!t ||t.errorno)return void e(null);var i=[],o=t.results[0].fields,a=o.c_vids||o.c_vclips||[];n.each(a ,function(t,e){i.push({vid:e.c_vid,title:e.c_title,pic:e.c_pic_160_90,url:e.c_play_url})}),e(i)}).fail( Function(){e(null)})},n=function(i,e,n){var o=t.libs.jQuery;return n=n||o.noop,e?(i=i|| "", void o.ajax({method:"GET",url:"http://like.video.qq.com/fcgi-bin/like",data:{msgtype:"122",uin:i, Id:e,play:"2",pidx:"0",size:"11",otype:"json",tablist:"9"},dataType:"jsonp",cache:!0,scriptCharset:"utf -8"}).done(function(t){if(!t||t.errmsg||!t.tab List) return void n(null);var i=[];o.each(t.tablist[0].cover_info,function(t,e){i.push({vid:e.id,title:e. Title,pic:e.picurl,url:e.playurl})}),n(i)}).fail(function(){n(null)})):void n(null)},o=t. Utils.cookie,a={_configName:"autoplay_cookie",_config:null,_set:function(i){if(this._config=t.config[this._configName],window.localStorage){var e={val: i,time:(new Date).getTime()};t.utils.localqq.set(this._config.key,e,function(t,i){})}o.set(this._config.key, i,{expires:this._config.expires,domain:this._config.domain,path:this._config.path})},get:function(){this._config=t.config[this._configName];var i=o.get(this._config.key);return i?i:t.sign.qqcomstore?t.sign.qqcomstore:i},on:function(){this._set("1")},off :function(){this._set("0")}},l={_configName:"playing_cookie",_config:null,_set:function(i){this._config=t.config[this._configName],o .set(this._config.key,i,{expires:this._config.expires(),domain:this._config.domain,path:this._config.path})},get:function(){return this. _config=t.config[this._conf igName], o.get(this._config.key)}, on:function(){this._set("1")},off:function(){this._set("0")}},r= {_configName:"mini_unmute",_config:null,_set:function(i){this._config=t.config[this._configName],o.set(this._config.key,i,{expires:this._config. Expires,domain:this._config.domain,path:this._config.path})},get:function(){return this._config=t.config[this._configName],o.get(this._config.key }},on:function(){this._set("1")},off:function(){this._set("0")}},s={on:function(){window.dc_playing_sign|| (window.dc_playing_sign={}),window.dc_playing_sign[t.modName]=!0},off:function(){window.dc_playing_sign||(window.dc_playing_sign={}),window.dc_playing_sign[t.modName] =!1}, isAnyonePlaying:function(){if(window.dc_playing_sign){for(var i in window.dc_playing_sign)if(i!==t.modName&&window.dc_playing_sign.hasOwnProperty(i)&&window.dc_playing_sign[i]) Return!0;return!1}return!1}},u={boss2619:function(i,e){var n=t.libs.jQuery,o=n.param({BossId:"2619",CheckSum: "1312852225",sIp:"",iQQ:t.userinfo.qq||"",sOp:i||"", sDomain:window.location.hostname||"",sUrl:window.location.href||"",sRef:window.document.referrer||"",vid:e||"",_dc:""+Math .random()});(new Image).src="http://btrace.qq.com/kvcollect?"+o}};i={getVideoListByCoverId:e,getLikeVideoList:n,autoPlaySign:a,playingSign: l,playingGlobalSign:s,miniUnMuteSign:r,trace:u},t.fn=i}(window.dc_related_video),function(t){var i={},e=!1;i.getPlayerSize=function() {return e?{width:t.dom.$player_mod.width(),height:t.dom.$player_mod.height()}:void 0},i.setPlayerModId=function(i){t.dom.$ Player_mod.attr("id",i)},i.setTitle=function(i,e){return t.dom.$title.html(i).attr("href",e)};var n=function (){var i="enabled",e=function(){t.dom.$autoplay_sw.attr("bosszone",function(){return o()?"bofang_button_close":"bofang_button_open"})},n =function(n){t.dom.$autoplay_sw[n?"addClass":"removeClass"](i),e()},o=function(){return t.dom.$autoplay_sw.hasClass(i) },a=function(n){var a=t.dom.$autoplay_sw;a.on("click",function(){a.toggleClass(i),"function"==typeof n&&n.call(null, o()),e ()})};return{bind:a,setStatus:n,getStatus:o,updateBosszone:e}}();i.autoPlaySW=n;var o=function(){var i,e,n,o, a,l,r=function(){p(),t.dom.$playlist_next.on("click",function(){c("forward")}),t.dom.$playlist_prev.on(" Click",function(){c("backward")}),t.dom.$playlist_scol.on("scroll",t.utils.throttle(function(){var e=t.dom.$playlist_scol.scrollLeft (),n="disabled";0===e||e===a||0>=a?(0==e&&t.dom.$playlist_prev.addClass(n),(e=== a||0>=a)&&t.dom.$playlist_next.addClass(n)):t.dom.$playlist_ctrl.removeClass(n),-1!==navigator.appVersion.indexOf("MSIE 7.") &&i.css("visibility","inherit").css("visibility","visible")},50)),t.dom.$playlist_scol.trigger("scroll")},s=function(i) {t.dom.$playlist_scol.stop().animate({scrollLeft:parseInt(i,10)},500)},u=function(o){if(!(0>o||o>e-1 )){var a=t.dom.$playlist_scol;$item=i.filter(":eq("+o+")"),s(a.scrollLeft()+$item.position().left-a .width()/2+n/2),l=o}},d=function(t){var e="current";i.find("> a."+e).removeClass(e), I.filter(":eq("+t+")").find("> a").addClass(e)}, c=function(i){var e,o=t.dom.$playlist_scol,l=o.scrollLeft(),r=Math.round(.7o.width());"forward"===i?e =l+r:"backward"===i&&(e=lr),n>e?e=0:e>an&&(e=a),s(e)},p=function(){i=t .dom.$playlist_list.find("> li"),e=i.length,n=i.filter(":eq(0)").outerWidth(!0),o=t.dom.$playlist_scol. Width()/n,t.dom.$playlist_list.css("width",en),a=t.dom.$playlist_list.outerWidth(!0)-t.dom.$playlist_scol.width()};return {init:r,setCurrentToIdx:d,scrollToItemIdx:u,forward:function(){c("forward")},backward:function(){c("backward")},hide:function(){return t. Dom.$playlist_node.slideUp(300)},update:p}}();i.playlist=o;var a=function(){var i,e=!1,n=function(){var i=t .libs.jQuery,e={};e.top=t.dom.$root.offset().top,e.btm=e.top+t.dom.$root.height();var n={ Height:i(window).height(),scrollTop:i(window).scrollTop()},o=e.top>=n.scrollTop&&n.scrollTop+n.height>=e.top,a=e.btm >=n.scrollTop&&n.scrollTop+n.height>=e.btm,l=e.top=d;c?(s=0-r/2-t.dom.$player_wrap.width()-10,u ="50%"):(s=0,u=0),t.dom.$player_wrap.css({"margin-left":s,lef t:u})}}"1"!==t.fn.miniUnMuteSign.get()&&t.player.setFlashVolume(0)}t.player.resizePlayer(),t.dom.$player_wrap.css("visibility ",""visible"),i=l}},100),l=function(){if(!t.utils.browser.isIe6orLower()){var i=t.libs.jQuery;i(window). Scroll(a),i(window).resize(a),t.dom.$player_mini_ctrl.on("click","a[data-action=close]",function(i){i.preventDefault(), e=!0,a(),t.player&&t.player.tvp_player_obj&&t.player.tvp_player_obj.pause&&t.player.tvp_player_obj.pause()}),t.dom.$player_mini_ctrl.on("click","a[data -action=resize]",function(i){i.preventDefault(),t.dom.$player_wrap.toggleClass("rv-player-mini-big"),t.player.resizePlayer()});var n =t.dom.$player_mini_ctrl.find("a[data-action=mute]"),o=function(){var i=t.player.getFlashVolume();"number"==typeof i?n.removeClass ("mute-off mute-on").addClass(0===i?"mute-on":"mute-off"):n.hide()};o(),n.click(function() {var i=0===t.player.getFlashVolume();t.player.setFlashVolume(i?80:0,!0)}),t.player.bind("onvolumechange",function(){o( ),t.sign.vol_change_by_prog||(t. player.getFlashVolume()>0?t.fn.miniUnMuteSign.on():t.fn.miniUnMuteSign.off())})}};return{detectVisible:n,init:l}}();i.scrollPlay =a,i.init=function(){var i=t.libs.jQuery;t.dom.$root=i(".rv-js-root"),t.dom.$title=t.dom. $root.find(".rv-title a"),t.dom.$autoplay_sw=t.dom.$root.find(".rv-js-autoplay"),t.dom.$player_wrap=t.dom .$root.find(".rv-player-wrap"),t.dom.$player_mod=t.dom.$player_wrap.find(".rv-player-mod"),t.dom.$player_mini_ctrl=t .dom.$player_wrap.find(".rv-player-mini-ctrl"),t.dom.$playlist_node=t.dom.$root.find(".rv-playlist"),t.dom.$playlist_scol =t.dom.$playlist_node.find(".rv-playlist-scroller"),t.dom.$playlist_list=t.dom.$playlist_node.find("ol.rv-playlist-list"),t.dom .$playlist_ctrl=t.dom.$playlist_node.find(".rv-playlist-ctrl a"),t.dom.$playlist_prev=t.dom.$playlist_ctrl.filter(".prev"),t.dom. $playlist_next=t.dom.$playlist_ctrl.filter(".next");var n=["nba"];window.ARTICLE_INFO&&~i.inArray(window.ARTICLE_INFO.sub_nav,n)&&(t.dom.$ root.addClass("rv-adjust-wide-article"),i(windo w).resize(t.utils.throttle(function(){t.player&&t.player.resizePlayer&&t.player.resizePlayer()},50))),e=!0},t.ui=i}(window. Dc_related_video), function(t){var i,e,n={},o={},a={},l=function(){var t=function(t){return function(){for(var i=0;i=i&&i+518>t}function n(){e()&&!r&&(t.utils.loadTvp(l),r=!0)}var o=i;t.libs.$= t.libs.jQuery=i,t.utils.debug_log("jquery version is ",t.libs.$().jquery),t.userinfo={qq:t.utils.cookie.get("o_cookie") ||null},t.sign.autoplay=function(){return window.preventAutoPlay===!0?!1:!0===t.fn.playingGlobalSign.isAnyonePlaying()?!1:"0"= ==t.fn.autoPlaySign.get()?!1:!("1"===t.fn.playingSign.get()&&!/\bQQBrowser/i.test(window.navigator.userAgent))} (),t.utils.debug_log("auto play sign: ",t.sign.autoplay),t.ui.init();var a=function(i){if(i!==t.modName&&t.player .tvp_player_obj)if(t.sign.autoplay=!1,t.utils.debug_log("tring to pause by event...."),t.sign.playstatus&&"play"!==t.sign.playstatus) If("ad"===t.sign.playstatus){t.utils.debug_log("paused(stopvideo) by event");try{t. player.tvp_player_obj.getPlayer().stopVideo()}catch(e){}}else{t.utils.debug_log("paused by event");try{t.player.tvp_player_obj.pause()}catch(e) {}}else"tostart"==i?t.player.tvp_player_obj.getPlayer().stopVideo():(t.utils.debug_log("will stop after __addlstart or playing"),t.sign.pauseWhenPlay=!0 }},l=function(i){t.libs.tvp=i;var n="related_video_info";if(!window[n]||!window[n].vid)return void t.utils.debug_log( "Error: related_video_info not found.");t.vinfo=window[n],t.sign.automute=function(){return!!window.isRelvideoMute}(),t.utils.debug_log("auto mute sign: ",t.sign.automute);var l="tvp-mod-player-"+t.vinfo.vid;t.ui.setPlayerModId(l),t.libs.$(window).on("video: Pause",function(i,e){t.utils.debug_log("received custom event from ",e),a(e)}),t.config.tvp_player={modId:l,autoplay:t.sign. Autoplay,loadingadAutoplay:window.preventAutoPlay===!0?!1:t.sign.autoplay,vodFlashSkin:"http://imgcache.qq.com/minivideo_v1/vd/res/skins/TencentPlayerMiniSkin.swf",pic: T.sign.autoplay?"":t.vinfo.pic,flashWm Ode:"transparent",vodFlashExtVars:{ptag:window.TEN_VIDEO_PTAG||"",clientbar:0},plugins:{AppBanner:!1,AppRecommend:!1,AppFollow:!1}},t.player.playByVid( T.vinfo.vid),t.ui.setTitle(t.vinfo.title,t.vinfo.url),t.sign.first_trace_reported=!1,t.player.bind(t.sign.autoplay?"onplay" :"onplaying",function(){t.sign.first_trace_reported||t.fn.trace.boss2619(t.sign.autoplay?"first_auto":"first_click",t.vinfo.vid),t.sign.first_trace_reported =!0});var r=!1;t.player.bind("onplaying",function(){r||window.v_nomini||t.ui.scrollPlay.init(),r=!0}) ,t.videos=[];var s=null,u=function(i){i||t.ui.playlist.hide(),s&&clearTimeout(s),t.videos.push(t.vinfo),o .each(i,function(i,e){e.vid!==t.vinfo.vid&&t.videos.push(e)}),t.utils.debug_log(t.videos);var n=""; O.each(t.videos,function(i,e){e.title.replace(/[^\x00-\xff]/gi,"").length>40?e.stitle=t.utils.cutstr2 (e.title,40)+"...":e.stitle=e.title,n+="",n+=" ",n+="
",n+="
",n+=" "+e.stitle+"",n+="
",n+=" ",n+=""}),t.dom.$playlist_list.html(n),t.ui.playlist.init();var a=function(i){if(i){var e,n;return o.each(t.videos,function(t,o){return o.vid===i?(e=o,n=t,!1):void 0}),e&&(e .idx=n),e}},l=function(i){if(!(0>i||i>t.videos.length-1)){var e=t.videos[i];t. player.playByVid(e.vid),t.ui.playlist.setCurrentToIdx(i),t.ui.playlist.scrollToItemIdx(i),t.ui.setTitle(e.title,e.url)}};t. Dom.$playlist_list.on("click","a[data-vid]",function(i){i.preventDefault();var e=o(this).attr("data-vid"),n= a(e);l(n.idx),t.fn.trace.boss2619("user_click",e)}),t.player.bind("ongetnext",function(i){t.utils.debug_log( "event: ongetnext");var n=a(i),o=n.idx+1,r=e();o
Real-time feedback in the game
Is the base attacked? Is there a shortage of ammunition? How long is the skill cooling time? These important information can be displayed directly on the keyboard. You can see it with a glimpse of Yu Guang, just like a speedometer from time to time when driving, it will not distract you from the game.
Axonn: Customize Your Personal Keyboard Interface
Axonn is a companion software for the Protean keyboard that allows users to customize the keyboard according to their own game style and needs.
If you're too lazy to put a lot of thought into it, you can adjust the background based on the default settings, and the effect is good.
The customization of the buttons is very convenient and convenient - select a button, modify its function and feedback, select an icon or upload your own icon, select a color, set a button change for a specific event, and get it done. (It sounds a little tricky, but the interface is not complicated, and it takes a lot of thought to customize a unique, pleasing keyboard.)
Axonn allows you to create a file for each game on your computer so that they have their own dedicated keyboard interface. Other features include: selecting multiple keys to modify together, downloading new games or programs that have not loaded on Protean, sharing keyboard layouts with other users, and more.
In addition, system notifications can also be displayed directly on the Protean, such as delays, FPS, CPUs, and so on.
Protean's R&D team plans to integrate most of the major applications when the product is on the market. They will conduct a questionnaire survey at the end of the crowdfunding campaign, soliciting 100 users' most needed applications, and promise that they will be able to handle them when the product is launched. They also stated that other applications will be solved through open APIs and the cooperation of the developer community.
Keep ahead with the open API
The development API allows developers and revampers to integrate Axonn with any game or software. To make this process as smooth as possible, Protean's R&D team has cooperated with several independent game studios.
Mechanical key switch
Protean's R&D team independently developed key switches exclusively for Protean, both silent and non-silent versions. The R&D team is working closely with leading manufacturers to ensure the quality and feel of key switches. In addition, each key switch can be removed from the PCB, making it easy to repair the screen and switch the type of switch.
Display screen
Protean's R&D team is working with a Taiwanese manufacturer to develop high-quality RGB-backlit LCD displays.
Override switch
This switch allows the keyboard to switch between the "standard" (default), "Protean" (custom), and "invisible" (off backlight) modes.
Covers both ANSI and ISO keyboard types
Crowdfunding campaigns and listing plans
The Protean keyboard is currently being crowdfunded on Kickstarter with the goal of raising $150,000 by November 2, 2016. Funders must invest $208 (about RMB1,387) in order to preemptively receive the Protean keyboard.
According to the R&D team's plan, the Protean keyboard will be shipped to early supporters in April of next year and all supporters will be shipped in May.
Source: Kickstarter
.wxdigi { padding:20px 0; border-top: 1px dotted DBDBDB; } .wxdigi dt { display:inline; float:center; margin-right:17px; } .wxdigi dd strong { display:inline-block; padding-top :0px; color:414141; font-size:14px; } .wxdigi dd { font-size:14px; color:606060; }