Friday, June 27, 2014

Unreal Engine 4 "Rivalry" Demo -- Google I/O 2014

在Google I/O 上, Epic 展示 其遊戲引擎Unreal Engine 4及NVIDIA 合作的 Rivalry 計劃 - 示範使用NVIDIA Tegra K1 在 行動系統Android L 及 Google 針對ES 3.1 設計的 AEP上運行電腦級的遊戲影像 !! 

 
觀看示範影片

unreal engine 網站

Autodesk signs a definitive agreement to acquire Shotgun Software

Autodesk又再收購 . 今回是著名的電影及遊戲製作管理工具及平台 Shotgun !! , 根據Don Parker在網誌發表Shotgun一切依舊 , 包括網站 , 團隊及支援網站等等... 

 
有關收購Shotgun

Shotgun網站 

Wednesday, June 25, 2014

Tuesday, June 24, 2014

Esoteric Software - Spine - 2D animation for games

Esoteric Software 開發軟件 Spine , 2D動畫製作軟件 , 適用於遊戲製作 , 能輸出到大部份熱門遊戲引擎 ! 

 
Spine 網站

Wednesday, June 18, 2014

Tuesday, June 17, 2014

RealFlow 2014 is HERE!

RealFlow 2014 已經推出 , 新功能包括Viscosity in Hybrido 2 , RenderKit for Arnold , New Daemons (Sheeter and Ocean Force Field) , 以及改良介面及meshing 工序等等 , Node-Locked版售二千五美元 , 而購買Floating license可獲一個免費Node使用 , 六月底前購買更有85折優惠 !! 
 
RealFlow 網站

Making of Adidas "Brazuca"

Making of Adidas "Brazuca"(cgrecord.net)
2014巴西世界盃指定用球-BRAZUCA 製作教學 , 由菲律賓製作單位 Full-Frame Studio使用3Ds Max, Marvelous Designer, Adobe Photoshop & Adobe Illustrator 等工具製作 

 
有關制作教程(cgrecord.net)

Saturday, June 14, 2014

主題系列的手機賽車戰鬥遊戲 最終幻想VII G-BIKE

日本遊戲公司SQUARE ENIX在美國E3電玩展上宣佈,今年秋天將發表 Final
Fanstasy最終幻想 主題系列的手機賽車戰鬥遊戲 最終幻想VII G-BIKE 。遊戲由
CyberConnect2所開發,將採取免費遊戲、搭配APP內購道具的制度,iOS及Android版本都將於秋天推出。


玩過1997年所發行的《最終幻想VII》的玩家應該對「G-BIKE」不陌生,在 《最終幻想VII》中,於特定場所及「Gold Saucer」設施內都可進行「G-BIKE」的小遊戲。而在手機遊戲《最終幻想VII G-BIKE》中,將以現代的技術改製成完整的遊戲登場。玩家除了可享受充滿魄力的機車競速及戰鬥外,還包含了養成要素及道具收藏…等等系統,讓人不禁想 要仔細鑽研,獲得勝利。

以FFVII的世界為舞台,瘋狂馳騁及戰鬥
不只是競速!在充滿立體感的舞台內,除了要迴避障礙物,還能騎著G-BIKE斬擊敵人,將帶給玩家速度與戰鬥的雙重刺激。

FF迷們不可錯過的迷人世界觀
構築在FF世界中,遊戲內令人熟悉的怪物們將會登場,玩家還能夠體驗克勞德必殺技的美麗畫面。
任務與養成等多種有趣系統
遊戲中有各式各樣的任務,玩家可能要一邊騎著你的G-BIKE,一邊討伐巨大頭目喔。另外,還有強化武器與收集道具等多種系統,為《最終幻想VII G-BIKE》帶來令人充滿期待的變化。

Friday, June 13, 2014

Chain Eleven世界足球盃先來為世足暖身!

Chain Eleven世界足球盃先來為世足暖身!

日本行動遊戲平台mobcast與行動網遊公司gumi推出了共同開發的即時足球戰鬥遊戲《Chain Eleven世界足球盃》,遊戲已先推出iOS和Android雙版本,喜歡足球遊戲的玩家們可別錯過囉。




Chain Eleven世界足球盃 /日文
>>Android下載
>>iOS下載
>>官方網站
《Chain Eleven世界足球盃》中總共有2,000名以上世界級選手登場!並支援11人vs 11人的遊戲模式,還有戰略性的「Clan Battle」、與同隊夥伴們協力發動技能…等多種強調「合作」的遊戲設計。玩家在遊戲過程中,將能體會到前所未有的世界觀,不知不覺中沈浸於「與夥伴一 同戰鬥,邁向頂尖!」的奮鬥過程。
除了日本外,本作目前也在中國、韓國等地區推出,喜歡足球遊戲的朋友請別錯過囉。
新聞資訊來源:《チェインイレブン ワールドクランサッカー》官方網站

 

RED Dragon 6K now at Film Mgaic, available for your filming and photo shoot

想感受一下專業級的 RED Dragon 在6K (6144 x 3610 pixels) 解像下行 100fps 及 16.5+ stop Dynamic Range 的震撼拍攝過程 ? 有關拍攝器材已經可以在Film Magic (香港天極電影) 租賃 . 租一日大慨是一部bmpcc咁上下價錢 . 

 
Film Magic網站

編程需要知道多少數學知識?

編程需要知道多少數學知識

(摘要):许多人认为在开始学习编程之前必须对数学很在行或者数学分数很高。但一个人为了编程的话,需要学习多少数学呢?實際上不需要很多。這篇文章中我會深入探討編程中所需要的數學知識

 下面是我在reddit的的子論壇轉/ learnprogramming看到的幾個帖子 


  “要成為一個優秀的程序員需要學習多少數學?”
 
“我應該重新學習數學嗎?”
 
“這可能是我提問過的最愚蠢的一個問題。成為一個優秀的程序員究竟需要學習多少數學?”



數學和編程有一種容易讓人誤解的聯繫。許多人認為在開始學習編程之前必須對數學很在行或者數學分數很高。但一個人為了編程的話,需要學習多少數學呢?實際上不需要很多。這篇文章中我會深入探討編程中所需要的數學知識。你可能已經都知道了。

加減乘除—實際上,電腦會幫你作加減乘除運算。你僅需要知道什麼時候運用它們。模運算—模運算是用來計算餘數,它的符號通常用%百分號來表示。所以23除以7等於3,餘數是2。23 MOD 7 = 2。判斷是奇數還是偶數的模運算—如果你想知道一個數是奇數還是偶數,用它mod 2來作模運算,如果結果是0,如果結果是1它就是偶數。 ,就是奇數。 23 MOD 2等於1,所以23是奇數,24 MOD 2等於0,24是偶數。對一個數作百分數運算,就是用這個數來乘以一個百分數。譬如你要得到279的54%,就是用0。54*279。這就意味著為什麼1.0等於100%,0.0等於0%。知道負數是什麼負數乘以負數等於正數。負數乘以正數等於負數。就這麼簡單。知道卡迪爾坐標系統在編程中,(0,0)代表屏幕左上角,Y坐標的正軸往下。知道勾股定律,因為它是用來計算笛卡爾坐標中兩點之間的距離的。勾股定律a^2+^2=c^2。 (x1,y1)和(x2,y2)兩點之間的距離等於((x1–x2)^2+(y1–y2)^2)。知道十進制、二進制、十六進制十進制就是我們通常用的十個數:0-9。通常認為這個十進制系統是人類發明的,因為我們有十個手指。


電腦採用二進制數據,只有兩個數字:0和1。這是因為我們用電子元件來構建的電腦,讓電腦只識別兩種狀態更便宜些(一種代表0,另一種代表1)。數是一樣的,但是在不同的進制系統裡的表現形式不同,因為不同進制包含的數的個數不同。十六進制比十進制多六個數字,所以我們用AF表示超過9的數。能夠表現這些進制系統的最簡單方法就是用一個計數器(odometer)。下面三種不同的計數器顯示的是同一個數,但在不同的進制系統中的形式不同:
 


在新窗口中查看计数器页面 
在新窗口中查看計數器頁面

你甚至不需要知道怎麼從一個進制系統轉換成另一個系統每種編程語言都有幫你轉換的函數。

(提示一下,十六進制的使用是因為一個十六進制的數可以表示四個二進制的數。因為十六進制中的3和二進制中的0011對應,十六進制的A和二進制的1010對應,所以十六進制中的3A(十進制的58)可以寫成二進制的00111010。十六進制在編程中的使用是因為它是對二進制的簡化。沒人喜歡寫出的數全是0和1。)

就是這麼多了。除了進制系統以外,你可以已經知道編程所需的數學知識了。雖然普遍認為編程需要學習許多數學,但實際上並不需要那麼多。你可能為了編寫一個程序,譬如說地震模擬器,而需要學習數學。其實你更需要學習地震的數學,而不是因為要編寫地震模擬器而學習數學。 

某些編程領域中需要更高級的數學知識有一些領域中需要更多的數學知識(但95%的軟件中,你都不需要知道它們。) 

3D遊戲和3D繪圖—3D通常需要涉及三角函數和線性代數(用矩陣來解決問題的數學)。當然,有許多3D圖形庫已經實現了這些數學編程,你不需要知道這些數學。 

2D物理(譬如憤怒的小鳥)和3D物理(譬如許多流行的3D遊戲)—為了寫涉及到物理的編程,你需要學習一些物理方程和公式(尤其是力學,如彈力,重力,球滾下斜坡等物理。)然而,已經有一些物理引擎和軟件庫幫你實現了,所以你也不需要知道遊戲(如憤怒的小鳥)中的物理公式。 

加密學—事實上我指的是RSA。你需要知道質數的有關知識,以及如何求最大公約數(其實是個非常簡單的算法,還有許多編程語言中都有gcd()函數,幫你求解最大公約數)其他的編碼大部分就是將數據按照某種步驟挪動。舉個例子,下面的flash就是AES“Rijndael”編碼的步驟所有的步驟包含用一些數減去另一些數,將行向上移,將列數字打亂,再作簡單的加法運算。 

如果你要寫你自己的加密算法(通常不需要你做,因為已經有許多很好的工具了,並且如果你不是加密學的專家的話,你的程序也許會很容易被破解。)如果你僅僅想加密一些數據的話,已經有許多加密和解密的軟件庫了。所以就算是以上的情況,你也不需要真正的知道3D圖像,物理或者加密的數學。你只需要學習運用軟件庫就行了。

編程需要學習什​​麼?  

你需要學習的是如何建模和設計算法。這意味著,如何將真實世界的運算或者數據處理抽像出來,寫出代碼,讓計算機來幫你運算。例如,在遊戲“龍與地下城”(Dungeons and Dragons)中,角色和怪獸都有許多不同的戰鬥統計值:血點(Hit points)是一個人死前所能經受的傷害值。越高的血點就意味著可以​​經受更多的傷害。 
防禦等級(armor class)是對你的武器防禦能力的量度。防禦值越低,武器的防禦能力越高。
    
 
THAC0(讀作“thay-co”,“To Hit Armor Class 0”),是對一個人進行有效攻擊的能力的測量。 THAC0值越低,攻擊越準。
    
 
武器的攻擊力用類似1d6+2來表示,它表示搖一個六面骰得到的值,然後再加2。2d4就是搖2個4面骰,然後將它們相加。 (“龍與地下城”採用的是4,6,8,10,12和20面骰。) 
dungeons and dragons 

要看攻擊者打防御者,讓攻擊者搖動一個20面骰。如果這個數字大於或等於攻擊者的THAC0減去防御者的防禦能力,那麼這個攻擊就成功,防御者將受到傷害。不然,防御者就阻擊了這個攻擊,並且不費血。我們假設兩個人物,Alice和Bob,她們具有以下值:

    
Alice:HP 14,AC 5,THAC0 18,DAMAGE 1d6
    
Bob:HP 12,AC 7,THAC0 16,DAMAGE 2d4所以Alice有更多的血點和防禦力(記住,AC越低越好)。但是Bob更可能成功擊中對方(記住,THAC0越低越好),並造成更多的傷害。我們說Bob的攻擊力更強是因為2d4可以造成2-8點傷害,而Alice的1d6只能造成1-6點傷害。 (如果你懂統計學,你可以計算出Bob的期望傷害值是5,比Alice的3.5要高。)你會打賭Alice或者Bob會贏得比賽對嗎?很難講誰會贏,他們看起來勢均力敵。儘管可能你的統計學學得很好,但做這個計算將會十分頭疼。編寫“龍與地下城”的程序(模擬戰鬥過程),你甚至不需要知道統計學。僅僅需要運行幾百次或者幾千次戰鬥,看看誰贏得更多。

Python寫的程序:(下載代碼

  1. import random, copy  
  2. NUM_FIGHTS = 1 
  3. VERBOSE = True 
  4. # Lower thac0 and lower ac values are better. Higher damage & hp values are better.  
  5. aliceTemplate = {'name': 'Alice', 'hp': 14, 'ac': 5, 'thac0': 18, 'dmgnum': 1, 'dmgsize':6, 'dmgmod': 0}  
  6. bobTemplate   = {'name': 'Bob',   'hp': 12, 'ac': 7, 'thac0': 16, 'dmgnum': 2, 'dmgsize':4, 'dmgmod': 0}  
  7. def display(s):  
  8.     if VERBOSE:  
  9.         print(s)  
  10. def attack(attacker, defender):  
  11.     if random.randint(1, 20) >= attacker['thac0'] - defender['ac']:  
  12.         damage = 0 
  13.         for i in range(attacker['dmgnum']):  
  14.             damage += random.randint(1, attacker['dmgsize'])  
  15.         damage += attacker['dmgmod']  
  16.         display('%s (%s hp) hits %s (%s hp) for %s points of damage. %s is reduced to %s hp.' % (attacker['name'], attacker['hp'], defender['name'], defender['hp'], damage, defender['name'], defender['hp'] - damage))  
  17.         defender['hp'] -damage 
  18.     else:  
  19.         display('%s misses %s.' % (attacker['name'], defender['name']))  
  20. aliceWins = 0 
  21. bobWins = 0 
  22. for i in range(NUM_FIGHTS):  
  23.     display('======================')  
  24.     display('Start of combat #%s' % (i+1))  
  25.     alice = copy.deepcopy(aliceTemplate)  
  26.     bob = copy.deepcopy(bobTemplate)  
  27.     while True:  
  28.         attack(alice, bob)  
  29.         if bob['hp'] <= 0:  
  30.             break  
  31.         attack(bob, alice)  
  32.         if alice['hp'] <= 0:  
  33.             break  
  34.     if alice['hp'] <= 0:  
  35.         display('Alice has died.')  
  36.         bobWins += 1  
  37.     if bob['hp'] <= 0:  
  38.         display('Bob has died.')  
  39.         aliceWins += 1  
  40. print()  
  41. print('Alice won %s (%s%%) fights. Bob won %s (%s%%) fights.' % (aliceWins, round(aliceWins


當運行這個程序時,你會看到:


  1. Start of combat #1  
  2. Alice misses Bob.  
  3. Bob (12 hp) hits Alice (14 hp) for 6 points of damage. Alice is reduced to 8 hp.  
  4. Alice misses Bob.  
  5. Bob misses Alice.  
  6. Alice misses Bob.  
  7. Bob misses Alice.  
  8. Alice misses Bob.  
  9. Bob misses Alice.  
  10. Alice (8 hp) hits Bob (12 hp) for 5 points of damage. Bob is reduced to 7 hp.  
  11. Bob misses Alice.  
  12. Alice misses Bob.  
  13. Bob misses Alice.  
  14. Alice misses Bob.  
  15. Bob (7 hp) hits Alice (8 hp) for 2 points of damage. Alice is reduced to 6 hp.  
  16. Alice (6 hp) hits Bob (7 hp) for 6 points of damage. Bob is reduced to 1 hp.  
  17. Bob misses Alice.  
  18. Alice (6 hp) hits Bob (1 hp) for 1 points of damage. Bob is reduced to 0 hp.  
  19. Bob has died.  
  20. Alice won 1 (100.0%) fights. Bob won 0 (0.0%) fights. 
但是可能Alice正好在某一次戰鬥中很幸運。
 讓我們關掉輸出再重新運行程序(在屏幕輸出比運行程序更耗時間),
當戰鬥次數達到30,000次時(將NUM_FIGHTS改成30000,VERBOSE變量變成False):
 
 
1.Alice 贏得12909 (43.03%)次戰鬥. Bob贏得17091 (56.97%)戰鬥。 
 
所以我們看到使用上面的數值,Bob稍稍佔先。 
電腦進行了30,000次戰鬥模擬。 
如果我們用筆和紙還有骰來進行30000次戰鬥模擬的話,
可能需要幾個月來算出結果,而我的筆記本僅用了8秒。
那麼如果Alice的血點從14增加到20呢。誰會贏呢?
 
 
1.Alice贏得19438 (64.79%)次戰鬥. Bob贏得10562 (35.21%)次戰鬥.   
 
我們看到給Alice增加6點血點,結果倒過來了,Alice佔先了。
 那麼如果Alice的血點只是增加到16呢? 

1.Alice贏得15176 (50.59%)次戰鬥啊. Bob贏得14824 (49.41%)次戰鬥.
 
 所以僅僅增加2個血點,就已經足夠扳回Bob更強攻擊力的勝算。
 

來看這個程序,它只用了加減乘除來計算一個百分比。 
甚至在更複雜的程序中,需要表示magic spells,治愈部位,多次攻擊,
在戰鬥中切換武器等不同效果時,我們也不需要知道更多的數學了。
當然,去學更多的數學吧。可以讓你成為更出色的程序員。
 但是為了學習編程需要多少數學?真的非常少。
更新:我想我應該在基本知識點中增加基本代數,
但僅僅需要知道的如:果X*3=12,知道X等於4。

原文鏈接:The “Invent with Python” Blog
 


 
 
 
 


Thursday, June 12, 2014

World Cup 2014 - Why SAMSUNG GALAXY ?

四年一度的"世界杯"開幕 . 繼早前Nike動畫影片外 , 另一間著名製作公司 PSYOP 為SAMSUNG GALAXY 製作球星大戰外星人動畫 (部份真人) 


 
SAMSUNG GALAXY 11 “THE MATCH” PART1 (psyop.tv)

 SAMSUNG GALAXY 11 “THE TRAINING” (psyop.tv)

E3 2014 New Trailers

在美國舉行的E3 2014 , 當中大量新遊戲預告片推出 , 太多了 ~~ 選了幾條出來直接看看吧 !!



 
Star Wars Battlefront (DICE making of)

                    The Division Cinematic Trailer 

                              Dead Island 2

 
Assassin's Creed Unity - Rule the World Trailer 

  
Scalebound 

 
Mario Maker

  E3Web


Wednesday, June 11, 2014

Autodesk Acquires Bitsquid

Autodesk 收購 Bitsquid 遊戲引擎 , 進一步邁向打造自家3D遊戲引擎之路 
 
Bitsquid網站

Sony tops game console sales since 2005

Sony Computer Entertainment 主導銷售視頻遊戲系統 , 去年財政年度售出一千八百著部 (18.7 million) 遊戲主機 , 這是自2005年後Sony再次一嘗一哥地位 !! 
 
有關內容 (nikkei.com)

Monday, June 9, 2014

Sony Pictures Animation Planning MEDUSA Feature with Director Lauren Faust

Sony 動畫公布將製作《MEDUSA》動畫電影, 這齣由Todd Alcott 及Holly Golden 創作的原創喜劇, 重新演繹希臘神話蛇髮女妖美杜莎的故事 , 電影將由《My Little Pony: Friendship is Magic》系列創作人 Lauren Faust 擔任導演 
 

Sony 動畫網站

Thursday, June 5, 2014

Wednesday, June 4, 2014