六面圍棋的軟件實現(xiàn)方法
【專利摘要】本發(fā)明公開了一種六面圍棋的軟件實現(xiàn)方法,包括如下步驟:a)構造六面體,并以六面體的六個面作為棋盤,以每個面上縱橫軸的交叉點作為落子點,相鄰兩面的縱軸或橫軸相互連通;b)采用不同的立體珠子作為兩方棋子;c)觸摸或者點擊落子點進行棋盤落子操作,每一次落子后檢驗是否執(zhí)行吃子邏輯;所述步驟a)中的六面體為N*N*N大小的立方體,所述立方體的六面棋邊和頂點與其他面相聯(lián)通。本發(fā)明提供的六面圍棋的軟件實現(xiàn)方法,在原有圍棋一面棋盤的基礎上,增加至六面棋盤,并增加面與面之間的相連,以此大大的增加了六面棋的可玩性,考驗棋手的邏輯能力,操作簡單,易于上手,能夠方便玩家全方位、多視角的進行棋盤格局的觀察。
【專利說明】
六面圍棋的軟件實現(xiàn)方法
技術領域
[0001]本發(fā)明涉及一種圍棋的軟件實現(xiàn)方法,尤其涉及一種六面圍棋的軟件實現(xiàn)方法。
【背景技術】
[0002]目前已有的棋藝僅限于平面圍棋,但隨著科技的發(fā)展,越來越多的三維技術涌入人們的生活,在娛樂方面有VR,在生活方面有了 3D家居等等,為了適應生活,傳統(tǒng)的棋藝也可以朝著三維方向改變,可雙方對戰(zhàn),從而將傳統(tǒng)圍棋升華。
【發(fā)明內(nèi)容】
[0003]本發(fā)明所要解決的技術問題是提供一種六面圍棋的軟件實現(xiàn)方法,操作簡單,易于上手,方便玩家全方位多視角的進行棋盤格局的觀察和落子,大大提高了圍棋游戲的可玩性。
[0004]本發(fā)明為解決上述技術問題而采用的技術方案是提供一種六面圍棋的軟件實現(xiàn)方法,包括如下步驟:a)構造六面體,并以六面體的六個面作為棋盤,以每個面上縱橫軸的交叉點作為落子點,相鄰兩面的縱軸或橫軸相互連通;b)采用不同的立體珠子作為兩方棋子;c)觸摸或者點擊落子點進行棋盤落子操作,每一次落子后檢驗是否執(zhí)行吃子邏輯。
[0005]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述步驟a)中的六面體為N*N*N大小的立方體,所述立方體的六面棋邊和頂點與其他面相聯(lián)通,N為自然數(shù)。
[0006]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述N的取值為5、7、9、11或13。
[0007]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述落子點選擇具有一定透明度的材質(zhì)進行填充,當鼠標懸浮在某個落子點上時,更改落子點顯示顏色,鼠標移出,則恢復原有落子點樣式。
[0008]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述步驟b)采用黑白兩種顏色的立體圓珠作為兩方棋子,所述步驟c)中上一個落地棋子采用棋子外圍添加紅色外發(fā)光的形式凸顯。
[0009]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述步驟c)設定距離視角最近的3個面上的落子點為可以下棋的點,并可通過旋轉(zhuǎn)來獲取對面的可供下棋的落子點;如果落子點已有棋子,則本次落子操作不成立。
[0010]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述步驟c)中檢驗是否執(zhí)行吃子邏輯的過程如下:獲取該棋子的位置信息以及顏色信息,將所有相互關聯(lián)的棋子合并成一個棋子堆,若前后左右上下六面無一該棋子顏色的棋子,則另起一個棋子堆,否則進行棋子堆的合并,然后校驗該棋子堆是否被其他顏色的棋子包圍來判斷該棋子堆是否應該被吃,若已被包圍,則計算吃子后的棋子信息。
[0011]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述步驟c)還包括用代表棋子顏色的線條將所有相互關聯(lián)的棋子連接起來,當收到用戶查看線條的請求后,通過遍歷所有的棋子堆,獲取所有需要顯示線條的位置信息,并使用LineRender組件進行線條的渲染,渲染引擎渲染畫面到屏幕上。
[0012]上述的六面圍棋的軟件實現(xiàn)方法,其中,所述軟件實現(xiàn)方法還包括:通過鼠標右鍵滑動來控制棋盤上下左右旋轉(zhuǎn),利用鍵盤數(shù)字、字母或方向按鍵來控制棋盤前后左右上下移動,設置鼠標中鍵來控制棋盤縮放,以及利用鍵盤功能鍵來恢復棋盤為45度視角狀態(tài)。
[0013]本發(fā)明對比現(xiàn)有技術有如下的有益效果:本發(fā)明提供的六面圍棋的軟件實現(xiàn)方法,在原有圍棋一面棋盤的基礎上,增加至六面棋盤,并且彼此相連,摒棄了傳統(tǒng)圍棋有邊界的說法,增加面與面之間的相連,以此大大的增加了六面棋的可玩性,考驗棋手的邏輯能力,操作簡單,易于上手,能夠方便玩家全方位、多視角的進行棋盤格局的觀察和落子。
【附圖說明】
[0014]圖1為本發(fā)明六面圍棋的軟件實現(xiàn)流程示意圖。
【具體實施方式】
[0015]下面結(jié)合附圖和實施例對本發(fā)明作進一步的描述。
[0016]圖1為本發(fā)明六面圍棋的軟件實現(xiàn)流程示意圖。
[0017]請參見圖1,本發(fā)明提供的六面圍棋的軟件實現(xiàn)方法,包括如下步驟:
[0018]步驟S1:構造六面體,并以六面體的六個面作為棋盤,以每個面上縱橫軸的交叉點作為落子點,相鄰兩面的縱軸或橫軸相互連通;
[0019]步驟S2:采用不同顏色的立體圓珠作為兩方棋子;
[0020]步驟S3:觸摸或者點擊落子點進行棋盤落子操作,每一次落子后檢驗是否執(zhí)行吃子邏輯;當鼠標懸浮在某個落子點上時,更改落子點顯示顏色,鼠標移出,則恢復原有落子點樣式,以便于玩家查看。
[0021]本發(fā)明以六個面,分為上下、左右、前后,彼此相連形成一個正六面體圍棋棋盤。從而在原有圍棋游戲的基礎上大大提高了圍棋游戲的可玩性。本發(fā)明操作簡單,只要會下圍棋的人,都能快速的掌握上手。而對于圍棋愛好者來說,六面棋則是一種新的挑戰(zhàn)。用戶操作步驟如下:點擊開始游戲,進入圍棋棋盤界面,隨機分配先后,先手方則可以開始落子;吃子則有系統(tǒng)檢測是否吃子,是,則實施吃子操作,若不是,則對方下棋。本發(fā)明則在原有圍棋一面棋盤的基礎上,增加至六面棋盤,并且彼此相連,摒棄了傳統(tǒng)圍棋有邊界的說法,增加面與面之間的相連,以此大大的增加了了六面棋的可玩性,考驗棋手的邏輯能力。本項發(fā)明特有的六面圍棋展示系統(tǒng)不僅支持六面棋棋盤的翻滾與旋轉(zhuǎn),方便棋手從多個方面觀察棋局的走勢,還支持棋子之間的連線功能,方便棋手能夠快速的找到棋子之間的連接點,從而能夠快捷的找到落子點。本發(fā)明可以適用與各種平臺,包括?<3、4]1(11'01(1、;[03、¥?等。
[0022]本發(fā)明提供的六面圍棋,主要功能如下:
[0023]1.六面棋,在傳統(tǒng)平面圍棋的基礎上,將6個棋盤組成一個立體的圍棋棋盤。
[0024]2.落子點采用透明度約為30%的材質(zhì)填充。
[0025]3.玩家鼠標懸浮在某個落子點上時,落子點更改材質(zhì)顏色為其他醒目顏色,鼠標移出,則恢復原有落子點樣式。
[0026]4.棋盤優(yōu)選是N*N*N大小的立方體,N為自然數(shù),N可以選擇邊長5、7、9、11、13五種大小的棋盤,默認大小為11*11*11。
[0027]5.棋子用立體圓珠表現(xiàn),分為黑白兩方棋子。
[0028]6.上一個落地棋子采用棋子外圍添加紅色外發(fā)光的形式凸顯。
[0029]7.棋盤可以旋轉(zhuǎn)移動縮放翻轉(zhuǎn)。
[0030]8.可以只顯示單個顏色的棋子。
[0031]9.可以只顯示棋子,隱藏所有的落子點以及棋盤連線。
[0032]10.可以顯示棋子之間的連線,用跟棋子相同顏色的線條連接。
[0033]11.六面棋邊和頂點的子可聯(lián)通其他面,黑子被白子圍住,但他與另一面的黑子相連,所以依然存活。
[0034]本發(fā)明提供的六面圍棋,主要玩法及實現(xiàn)控制如下:
[0035]—、用戶可以旋轉(zhuǎn)移動縮放棋盤以及恢復:
[0036]1.用戶可以通過鼠標右鍵滑動來控制棋盤上下左右旋轉(zhuǎn),鍵盤WSADQE來控制棋盤前后左右上下移動,鼠標中鍵來控制棋盤縮放,鍵盤Fl來恢復棋盤為45度視角狀態(tài);
[0037]2.系統(tǒng)監(jiān)聽鼠標右鍵滑動操作,計算滑動的方向以及滑動距離,控制棋盤旋轉(zhuǎn)的方向以及棋盤旋轉(zhuǎn)的快慢;
[0038]系統(tǒng)監(jiān)聽鍵盤按鍵操作,計算棋盤移動方向以及移動距離;
[0039]系統(tǒng)監(jiān)聽鼠標中鍵的滾動,計算攝像機拉近或者是拉遠以及拉動的速度;
[0040]系統(tǒng)監(jiān)聽鍵盤按鍵操作,判斷是否需要恢復視角狀態(tài),并且獲得初始棋盤視角信息;
[0041]3.系統(tǒng)根據(jù)計算,使用渲染引擎渲染畫面到屏幕上。
[0042]二、用戶可以隱藏顯示棋子:
[0043]1.用戶可以采用通用UI交互工具一一按鈕來實現(xiàn)棋子的顯示與隱藏。用戶可以通過界面上的“只看白棋”,“只看黑棋”,“只顯示棋子”三個按鈕來實現(xiàn)棋子的顯示與隱藏。舉例說明:用戶點擊“只看白棋”按鈕;
[0044]2.系統(tǒng)監(jiān)聽按鈕點擊事件,系統(tǒng)計算隱藏黑棋之后的棋子信息;
[0045]若此時鼠標點擊“只看黑棋”,則系統(tǒng)計算隱藏白棋之后的棋子信息;
[0046]若此時鼠標點擊“只顯示棋子”,則系統(tǒng)計算隱藏空白落子點之后的棋子信息;
[0047]3.使用渲染引擎渲染畫面到屏幕上。
[0048]三、用戶可以查看棋子之間的連線:
[0049]1.系統(tǒng)可以將有關聯(lián)的棋子之間合并成一個棋子堆,并用代表棋子顏色的線條連接起來。用戶可以采用通用UI交互工具一一按鈕來查看棋子之間的連線。用戶可以通過界面上的“查看線條”按鈕來實現(xiàn)棋子之間的連線的顯示與隱藏。用戶點擊“查看線條”按鈕;
[0050]2.系統(tǒng)監(jiān)聽按鈕點擊事件,系統(tǒng)通過遍歷所有的棋子堆,獲取所有需要顯示線條的位置信息;若不是第一次點擊該按鈕,系統(tǒng)計算所有恢復數(shù)據(jù);
[0051 ] 3.使用LineRender組件進行線條的渲染,渲染引擎渲染畫面到屏幕上。
[0052]四、用戶可以通過旋轉(zhuǎn)縮放等操作來獲取可下棋的點:
[0053]1.為了減低玩家誤操作,棋盤中所有的落子點并非所有都是可以可下棋的點,系統(tǒng)設定只有距離視角最近的3個面上的落子點才是可以下棋的點,另外用戶可以通過旋轉(zhuǎn)來獲取對面的可下棋的落子點,也可通過棋盤縮放來達到非三面圖以及非棋盤切割的情況下在棋盤內(nèi)下棋的作用;
[0054]2.舉例說明:玩家執(zhí)行旋轉(zhuǎn)操作,系統(tǒng)計算旋轉(zhuǎn)后所面向玩家的XYZ軸的信息,計算可以下棋的落子點信息;
[0055]3.使用渲染引擎渲染畫面到屏幕上。
[0056]五、用戶落子操作如下:
[0057]1.用戶可以在可下棋的落子點落子。用戶可以使用鼠標左鍵點擊落子點進行落子操作。用戶點擊落子點;
[0058]2.系統(tǒng)計算落子點的位置信息,調(diào)用接口進行數(shù)據(jù)的校驗,驗證該位置處是否已有棋子:若有,則該落子操作不成立;直接返回,若沒有則進行數(shù)據(jù)整合,并添加棋子預設作為該落子點的子節(jié)點,調(diào)用接口進行是否吃子的校驗,若可吃子,則吃子;
[0059]3.使用渲染引擎渲染畫面到屏幕上。
[0060]六、系統(tǒng)吃子控制實現(xiàn)如下:
[0061 ] 1.系統(tǒng)吃子發(fā)生在玩家上一玩家落子完畢和下一玩家未開始下子之間。玩家落子之后,系統(tǒng)獲取該棋子的位置信息以及顏色信息,進行棋子堆的合并,若前后左右上下六面無一該棋子顏色的棋子,則另起一個棋子堆,否則進行棋子堆的合并,然后根據(jù)校驗該棋子堆是否被其他顏色的棋子包圍來判斷該棋子堆是否應該被吃,若已被包圍,則計算吃子后棋子信息;
[0062]2.使用渲染引擎渲染畫面到屏幕上。
[0063]雖然本發(fā)明已以較佳實施例揭示如上,然其并非用以限定本發(fā)明,任何本領域技術人員,在不脫離本發(fā)明的精神和范圍內(nèi),當可作些許的修改和完善,因此本發(fā)明的保護范圍當以權利要求書所界定的為準。
【主權項】
1.一種六面圍棋的軟件實現(xiàn)方法,其特征在于,包括如下步驟: a)構造六面體,并以六面體的六個面作為棋盤,以每個面上縱橫軸的交叉點作為落子點,相鄰兩面的縱軸或橫軸相互連通; b)采用不同的立體珠子作為兩方棋子; c)觸摸或者點擊落子點進行棋盤落子操作,每一次落子后檢驗是否執(zhí)行吃子邏輯。2.如權利要求1所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述步驟a)中的六面體為N*N*N大小的立方體,所述立方體的六面棋邊和頂點與其他面相聯(lián)通,N為自然數(shù)。3.如權利要求2所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述N的取值為5、7、9、11 或 13。4.如權利要求1所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述落子點選擇具有一定透明度的材質(zhì)進行填充,當鼠標懸浮在某個落子點上時,更改落子點的顯示顏色,鼠標移出,則恢復原有落子點樣式。5.如權利要求4所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述步驟b)采用黑白兩種顏色的立體圓珠作為兩方棋子,所述步驟c)中上一個落地棋子采用棋子外圍添加紅色外發(fā)光的形式凸顯。6.如權利要求1所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述步驟c)設定距離視角最近的3個面上的落子點為可以下棋的點,并可通過旋轉(zhuǎn)來獲取對面的可供下棋的落子點;如果落子點已有棋子,則本次落子操作不成立。7.如權利要求6所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述步驟c)中檢驗是否執(zhí)行吃子邏輯的過程如下:獲取該棋子的位置信息以及顏色信息,將所有相互關聯(lián)的棋子合并成一個棋子堆,若前后左右上下六面無一該棋子顏色的棋子,則另起一個棋子堆,否則進行棋子堆的合并,然后校驗該棋子堆是否被其他顏色的棋子包圍來判斷該棋子堆是否應該被吃,若已被包圍,則計算吃子后的棋子信息。8.如權利要求7所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述步驟c)還包括用代表棋子顏色的線條將所有相互關聯(lián)的棋子連接起來,當收到用戶查看線條的請求后,通過遍歷所有的棋子堆,獲取所有需要顯示線條的位置信息,并使用LineRender組件進行線條的渲染,渲染引擎渲染畫面到屏幕上。9.如權利要求1所述的六面圍棋的軟件實現(xiàn)方法,其特征在于,所述軟件實現(xiàn)方法還包括:通過鼠標右鍵滑動來控制棋盤上下左右旋轉(zhuǎn),利用鍵盤數(shù)字、字母或方向按鍵來控制棋盤前后左右上下移動,設置鼠標中鍵來控制棋盤縮放,以及利用鍵盤功能鍵來恢復棋盤為45度視角狀態(tài)。
【文檔編號】A63F13/52GK105854299SQ201610195195
【公開日】2016年8月17日
【申請日】2016年3月31日
【發(fā)明人】張隆軍
【申請人】湖南快玩網(wǎng)絡科技有限公司