任博文
(鄭州工業(yè)應(yīng)用技術(shù)學(xué)院,河南 鄭州 451100)
java編程語言是一種化繁為簡的編程技術(shù),可以為普通編程技術(shù)提供更為便捷的編程語言,并且可以參照同類技術(shù)的優(yōu)點,摒棄缺點,將編程技術(shù)逐步完善[1]。交互式動畫是一種互動式的編程技術(shù),但是由于編程技術(shù)并不完善,導(dǎo)致互動性并不高,屬于被動選擇的形式,因此并不受歡迎?;诖藢ava運用到交互式動畫編程技術(shù)上,從以往的被動選擇,發(fā)展成現(xiàn)在的主動選擇,無論是畫質(zhì)還是操作,或者是交互性都有了很大的提升,用戶甚至可以自主編程,在小孩子的智力開發(fā)方面有著較為顯著的優(yōu)勢。
交互式動畫編程技術(shù)的流程有創(chuàng)建動畫模型、打印動畫文件、編輯交互式動畫場景,以及發(fā)布交互式動畫這四步。首先,創(chuàng)建動畫模型,也就是利用建模工具創(chuàng)建出動畫的三維模型;其次,將創(chuàng)建出的動畫模型進(jìn)一步優(yōu)化,并打印出來,觀察其畫質(zhì)是否清晰;再次,編輯出互動式動畫,并且結(jié)合不同用戶的需求,編輯出不同的互動式動畫;最后,將編輯好的交互式動畫發(fā)布出去,初步實現(xiàn)動畫互動模式[2]。具體交互式動畫流程圖如圖1所示。
圖1 交互式動畫流程圖
如圖1所示,交互式動畫編程技術(shù)的流程是以用戶選擇為主,用戶可以自主選擇提示中的動畫模式,喜歡就選擇,不喜歡就劃走,憑主觀意愿而定。相比較于常規(guī)的交互式動畫,新制定出的交互式動畫會更受歡迎。從流程圖中可以看出,每一個節(jié)點,用戶都可以選擇是或否,直到選擇到自己喜歡的交互式動畫。
交互式動畫的編程指令是指帶動整個畫面動起來,并且完成交互工作的指令。其指令包括動畫類、畫面處理類、畫面控制類、交互式流程類、動畫編程類,以及動畫管理類等編程指令。編程指令通過編輯動畫描述動畫內(nèi)容。動畫中出現(xiàn)的直線運動可以通過指令中設(shè)計的路線點,實現(xiàn)正確的目標(biāo)路線。圓形的路線相對復(fù)雜一點,需要經(jīng)過設(shè)計出路線點與目標(biāo)點,并且需要保證運動路線呈圓形[3]。要確定交互式動畫的實際動作軌跡,需要設(shè)置速度,為避免動畫動作過快,其動作速度以最大允許速度的百分比來給定。
畫面處理指令是指,對交互式動畫的畫面、畫質(zhì)進(jìn)行處理的指令,包括讀取用戶體驗、用戶選擇,以及用戶設(shè)置三個方面。交互式流程指令是指,嚴(yán)格遵照上文制定出的交互式動畫編程技術(shù)流程,是對交互式動畫工作產(chǎn)生影響的指令。動畫編程類指令是指,在交互式動畫編程時,運用java的編程語言,并直接在編程控制系統(tǒng)結(jié)構(gòu)中,以用戶為中心的交互界面,是一個允許用戶描述和互動的集成環(huán)境。為方便用戶實現(xiàn)互動,用戶編程系統(tǒng)的功能一般為,對用戶程序文件的管理、編輯、編譯、下載,以及對交互式動畫的動畫狀態(tài)的實時監(jiān)控等方面,將較為復(fù)雜的編程技術(shù)簡單化,提高交互式動畫的編程效率。動畫管理的編程指令是指,將所有交互式動畫進(jìn)行整理,并將其分類,逐個分類做出相應(yīng)的標(biāo)簽,降低查找動畫的難度。
交互式動畫編程界面的構(gòu)成和布局也是值得關(guān)注的問題。一個界面或動畫編程的布局直接關(guān)系到用戶的興趣,如果用戶的注意力首先被吸引到一個動畫的元素上,而這個動畫元素恰好是他需要的,就會增加用戶的交互體驗。通常,最好看的動畫元素會放置在屏幕中央,或者是占據(jù)整個動畫區(qū)域的最大位置,以便增強(qiáng)用戶對交互動畫的注意力。將一些次要的動畫元素排列在角落的區(qū)域,以不妨礙主動畫元素為前提,強(qiáng)化用戶“看”交互動畫的體驗,讓用戶的注意力集中在交互動畫的情節(jié)和動作的互動上,甚至可以弱化或舍棄某些非必要的動畫元素[4]。交互式動畫編程布局的好壞是影響用戶群數(shù)量的重要因素。一個豐富多彩的交互式動畫布局可以贏得很多用戶的青睞,但由于其設(shè)計的豐富性,使交互式動畫使用效率的損失也會較大。因為交互式動畫編程布局始終是為了提供用戶體驗,所以優(yōu)化交互式動畫的編程布局也要從用戶的角度出發(fā)[5]。
利用java編程語言編寫的程序具有獨立的體系結(jié)構(gòu),可以在交互式動畫上轉(zhuǎn)換成內(nèi)存較少的編程代碼,理論上可以完美達(dá)成減小內(nèi)存的要求,并且在任何系統(tǒng)都可以應(yīng)用[6],在優(yōu)化編程布局方面具有很大的優(yōu)勢。
要實現(xiàn)動畫過程的交互,就要了解動畫編程代碼轉(zhuǎn)換器的應(yīng)用,并且熟悉其轉(zhuǎn)換流程,代碼轉(zhuǎn)換器會自動翻譯,并生成符合交互式動畫的編程語言,再結(jié)合java的編程語言,將自動生成的編程代碼壓縮,實現(xiàn)交互式動畫的基本目標(biāo)。基于java設(shè)計的交互式動畫,可以利用java編程語言,將復(fù)雜的動畫編程轉(zhuǎn)換成簡單的動畫編程,方便減少交互式動畫、模型和管理文件的內(nèi)存[7]。并且,在此基礎(chǔ)上展現(xiàn)較為優(yōu)質(zhì)的交互式動畫圖像,給用戶情境重現(xiàn)一樣的效果??梢苑糯蠼换ナ絼赢嬛械牟蛔阒?,從根本上消除設(shè)計的風(fēng)險?;趈ava設(shè)計的交互式動畫代碼轉(zhuǎn)換器,可以支持用戶對動畫內(nèi)容的修改,技術(shù)人員通過用戶的修改,隨時用轉(zhuǎn)換器轉(zhuǎn)換成用戶想要的編程代碼。此轉(zhuǎn)換器會將接收到的代碼進(jìn)行區(qū)分,分不同類別、不同要求翻譯成新的代碼,并且轉(zhuǎn)換器轉(zhuǎn)換后的代碼較為不穩(wěn)定,不適合于搭配各種動畫元素[8]。所以在實際設(shè)計交互式動畫編程技術(shù)的轉(zhuǎn)換器時,要對轉(zhuǎn)換器轉(zhuǎn)換出的代碼配備相應(yīng)的翻譯部件。翻譯結(jié)束后,轉(zhuǎn)換成java編程語言,真正實現(xiàn)交互式動畫。
就常規(guī)的交互式動畫編程技術(shù)而言,維護(hù)次數(shù)較少,也可以無限次使用,但是編寫時間較長,編寫效率較慢,導(dǎo)致交互式動畫較少。通過上述研究,本文設(shè)計的基于java的交互式動畫編程技術(shù),理論上可以縮短交互式動畫編程的編寫時間,以某編程公司的編程技術(shù)人員為例,分別編寫常規(guī)的交互式動畫編程技術(shù)1、常規(guī)的交互式動畫編程技術(shù)2,以及本文設(shè)計的交互式動畫編程技術(shù),驗證本文設(shè)計的交互式動畫編程技術(shù),編寫時間是否縮短。
此次試驗以常規(guī)的交互式動畫編程技術(shù)1、常規(guī)的交互式動畫編程技術(shù)2,以及本文設(shè)計的交互式動畫編程技術(shù),3種編程技術(shù)在編寫時間、每次編寫的維護(hù)次數(shù),以及重復(fù)使用性幾方面,作對比實驗,驗證本文設(shè)計的交互式動畫編程技術(shù)可以是否縮短編寫時間。
根據(jù)此次試驗的3種交互式編程技術(shù)的編寫時間來看,本文設(shè)計的交互式動畫編程技術(shù),在時間上遠(yuǎn)遠(yuǎn)少于常規(guī)的交互式動畫編程技術(shù),具體實驗結(jié)果如表1所示。由表1可知,常規(guī)的交互式動畫編程技術(shù)1、常規(guī)的交互式動畫編程技術(shù)2,兩種編程方式的編寫時間較長,在5個小時左右,而本文設(shè)計的交互式動畫編程技術(shù),編寫時間在1個小時左右,三者的維護(hù)次數(shù)與可復(fù)用性都相同,但是編寫時間短,就會提高編寫效率,比常規(guī)的交互式動畫編程技術(shù)更具有實用意義。
表1 三種編程技術(shù)編寫時間對比
在當(dāng)今信息化的時代,計算機(jī)與網(wǎng)絡(luò)技術(shù)已經(jīng)逐漸成為不可替代的工具,并逐漸運用到人們的生活中,java是一種較為簡單的編程語言,有很多優(yōu)點,是將常規(guī)的復(fù)雜編程技術(shù)改良成簡單的編程技術(shù)。在縮短編程時間的同時,提高編程效率。本文研究了基于java的交互式動畫編程技術(shù),并通過實驗證明設(shè)計的有效性。