Git Product home page Git Product logo

chimerakang.github.io's People

Watchers

 avatar  avatar

chimerakang.github.io's Issues

HTC Wave SDK Development Daily <1> :: 漫步在數位靈魂之中 — 對工程師的輕鬆小語

https://chimerakang.github.io/posts/wave_daily1/

前言 上個月去聽了一下HTC新的分享會得知Focus推出了一個整合型的SDK,號稱可以支援各家Standalone的頭盔。看到整頁的簡報上秀出來的Logo,幾乎就是這幾年我所碰到也實際接過的所有廠商了,所以這一步算是有滿足動機,只要有時間就可以開始研究這個解決方案的實用性是否真如台上的講者所說的如此美好。
終於這一天來到了,因為某個案子需要支援Focus,開始要整合HTC wave sdk,不過因為專案整個資料量有60G左右,又包含許多分支和系統,也不可能直接從空專案開始,所以每一布都需要採用穩紮穩打的方式進行,避免改掉某個地方造成其他地方癱瘓的事情發生。但是即使是這樣,過程中Wave SDK還是讓我驚呆了,踩了幾個坑到今天才順利爬出來
開始整合 之前同事已經將此專案先升級到2017的版本,於是直接採用這個branch開始製作。
首先將Wave SDK內建的prefab拉進場景,再加入所需要的Define到 Player Settings 中,開啟 XR Settings的 Virtual Reality Supported,Virtual Reality SDKs也調整到 Mock HMD - Vive 這個選項後,這時候就迫不及待將專案執行一下,瞬間迎來了Unity死亡粉紅聖光
It’s holy shit !!
因為看到這個畫面,可能的原因是某些plugin互相衝突,但是這些plugin都是Wave SDK宣稱有支援的硬體,因此對Focus SDK小組宣稱的整合開始覺得懷疑,有一種不祥的感覺。
後來發現在Editor測試的時候,先把VR mode關掉就不會當掉了,確保在PC上測試的時候是安全的,build到實機上再把VR mode打開,這樣是比較可以接受的方案,因為這個奇怪的問題要找到可能曠日廢時,先把其他問題解決,最後再來解這個問題。
自作聰明 整合如火如荼在進行中,直到遇到一個奇怪的問題,讓我整個丈二金剛摸不著頭腦。事情是這樣的,一個場景在一開始的時候,某個按鈕Animation只是把物件放大而已,這在其他系統上都是正常的,但是WAVE SDK竟然連動畫系統都會失效,這是為什麼呢?正當苦惱之際,也到論壇上尋找是否有相關的issue,可惜這個問題就是無法找到真正的發生原因。直到某個script發生一個問題,那個程式片段是利用define避開執行的區段
#if !WAVEVR_SINGLEPASS_ENABLED IVRManager.Instance.m_useResetPosition = true; #endif 照理說不會執行的區段卻執行了,顯然define失效了,檢查player settings才發現Wave SDK的define不見了,怎麼不見的呢?翻了整個SDK會發現這一段程式碼:
public const string WVRSPDEF = "WAVEVR_SINGLEPASS_ENABLED"; public static List<string> GetDefineSymbols(BuildTargetGroup group) { //https://github.com/UnityCommunity/UnityLibrary/blob/master/Assets/Scripts/Editor/AddDefineSymbols.cs var symbols = PlayerSettings.GetScriptingDefineSymbolsForGroup(group); return symbols.Split(';').ToList(); } public static void SetSinglePassDefine(BuildTargetGroup group, bool set, List<string> allDefines) { var hasDefine = allDefines.

Build my first blog by Hugo and Github, auto deploy by Travis <2> :: 漫步在數位靈魂之中 — 對工程師的輕鬆小語

https://chimerakang.github.io/posts/post2github/

init git 首先進入blog目錄,初始化git環境,同時將github的
.travis.yml language: go go: - "1.8" # 指定Golang 1.8 install: - wget https://github.com/gohugoio/hugo/releases/download/v0.55.4/hugo_0.55.4_Linux-64bit.deb - sudo dpkg -i hugo*.deb before_script: - echo -e "Host github.com\n\tStrictHostKeyChecking no\n" >> ~/.ssh/config - git config --global user.email ${GITHUB_EMAIL} - git config --global user.name ${GITHUB_USERNAME} script: - hugo after_script: - git clone "https://chimerakang:${GithubToken}@${GH_REF}" github-pages - rm github-pages/public -rf - cp ./public/* github-pages -rf - cd github-pages - git add . - git commit -m "Update Blog By TravisCI with Build $TRAVIS_BUILD_NUMBER" - git tag v0.

Build my first blog by Hugo and Github, auto deploy by Travis <1> :: 漫步在數位靈魂之中 — 對工程師的輕鬆小語

https://chimerakang.github.io/posts/first-post/

前言 Hugo 是個快速產生靜態網站的工具,golang開發,快速有效,有很多theme可以支援 Github 是個工程師必備良藥,也支援Pages服務,就是靜態網頁,所以將Hugo建好的靜態網頁直接上傳到Github是很合適的組合,而且是免費又快速,還不用自己維護,這世界怎麼有這麼佛心的服務� Travis 是第一次接觸,大概瞭解了一下這是個提供高度自動化工具,只要寫個簡單的腳本,就可以支援很多自動化工作,剛好又高度整合Github。據說功能不僅止於此,有機會可以來做一些更複雜有趣的事情 安裝 Hugo mac使用者如果已經安裝brew的話,只要輸入以下指令即可安裝Hugo
brew install hugo 目前最新的版本應該是 0.56.3
建立部落格 開啟Terminal,只要輸入底下的指令,Hugo馬上會在blog這個目錄下產生所有需要的資源和程式碼
Hugo new site blog 修改 config.toml 接著開始做一些修改,首先進入目錄中需要修改config.toml,最重要的是新增theme,Hugo的生態系有相當多的theme,你可以選擇你喜歡的加入,底下是我的第一版的設定:
baseURL = "https://chimerakang.github.io/" languageCode = "en-us" defaultContentLanguage = "zh-tw" title = "Chimera's Blog" theme = "terminal" paginate = 5 [Author] name = "Chimera" [params] contentTypeName = "posts" themeColor = "green" showMenuItems = 2 # set theme to full screen width fullWidthTheme = false # center theme with default width centerTheme = false [languages] [languages.

How to write a git commit message<翻譯> :: 漫步在數位靈魂之中 — 對工程師的輕鬆小語

https://chimerakang.github.io/posts/git-commit-rules/

原文 翻譯開始: 簡介:為什麼好的 commit message 很重要 如果你曾經任意瀏覽過一些 git repository,你可能可以發現每個repository提交的commit messages或多或少是一團糟。例如,從我早期我貢獻在Spring上面的gems可以看出一些端倪(編按:Spring是Ruby on Rails的一個安裝工具,gem是指在rails上面開發出來的套件)
$ git log --oneline -5 --author cbeams --before "Fri Mar 26 2009" e5f4b49 Re-adding ConfigurationPostProcessorTests after its brief removal in r814. @Ignore-ing the testCglibClassesAreLoadedJustInTimeForEnhancement() method as it turns out this was one of the culprits in the recent build breakage. The classloader hacking causes subtle downstream effects, breaking unrelated tests. The test method is still useful, but should only be run on a manual basis to ensure CGLIB is not prematurely classloaded, and should not be run as part of the automated build.

gitalk not work?

{{ if .Site.Params.enableGitalk }}

<script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script> <script> const gitalk = new Gitalk({ clientID: '{{ .Site.Params.Gitalk.client_id }}', clientSecret: '{{ .Site.Params.Gitalk.client_secret }}', repo: '{{ .Site.Params.Gitalk.repo }}', owner: '{{ .Site.Params.Gitalk.owner }}', admin: ['{{ .Site.Params.Gitalk.owner }}'], id: location.pathname, // Ensure uniqueness and length less than 50 distractionFreeMode: false // Facebook-like distraction free mode }); (function() { if (["localhost", "127.0.0.1"].indexOf(window.location.hostname) != -1) { document.getElementById('gitalk-container').innerHTML = 'Gitalk comments not available by default when the website is previewed locally.'; return; } gitalk.render('gitalk-container'); })(); </script> {{ end }

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.