2008年10月7日 星期二

《 AS3 》Alternativa3D 安裝與配置

官方網站
http://alternativaplatform.com/en/

官方文件網頁
http://docs.alternativaplatform.com/dashboard.action

1. 下載
        註冊之後,觀看合約即可下載
        取得 Flash  組件檔案(.swc for 9 & 10)
        用此製作的程式,無法/嚴禁商業使用

2. 安裝與配置
        環境配置官方網站說明
             http://docs.alternativaplatform.com/display/TDEN/Connecting+library
      
        示範(Flash CS3)
            (1) 複製 全部的 .swc 到 C: \ Documents and Settings \ {username} \ Local Settings \ Application Data \ Adobe \ Flash CS3 \ en \ Configuration \ Components \.
            (2) 打開FlashCS3 IDE,將組件視窗打開,拉入元件庫即可。
 
        
3.範例測試
    官方的文件
    http://docs.alternativaplatform.com/display/TDEN/Hello%2C+Alternativa3D

    轉貼程式碼:
package {
import alternativa.engine3d.controllers.CameraController;
import alternativa.engine3d.core.Camera3D;
import alternativa.engine3d.core.Object3D;
import alternativa.engine3d.core.Scene3D;
import alternativa.engine3d.display.View;
import alternativa.engine3d.materials.WireMaterial;
import alternativa.engine3d.primitives.Box;
import alternativa.utils.FPS;

import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;

[SWF(backgroundColor="#000000", frameRate="100")]

public class HelloAlternativa3D extends Sprite {

private var scene:Scene3D;
private var view:View;
private var camera:Camera3D;
private var cameraController:CameraController;
private var box:Box;

public function HelloAlternativa3D() {
addEventListener(Event.ADDED_TO_STAGE, init);
}

public function init(e:Event): void {
removeEventListener(Event.ADDED_TO_STAGE, init);

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

// Creating scene
scene = new Scene3D();
scene.root = new Object3D();
box = new Box(100, 100, 100, 3, 3, 3);
box.cloneMaterialToAllSurfaces(new WireMaterial(1, 0xFFFFFF));
scene.root.addChild(box);

// Adding camera and view
camera = new Camera3D();
camera.x = 100;
camera.y = -150;
camera.z = 100;
scene.root.addChild(camera);

view = new View();
addChild(view);
view.camera = camera;

// Connecting camera controller
cameraController = new CameraController(stage);
cameraController.camera = camera;
cameraController.setDefaultBindings();
cameraController.checkCollisions = true;
cameraController.collisionRadius = 20;
cameraController.lookAt(box.coords);
cameraController.controlsEnabled = true;

// FPS display launch
FPS.init(stage);

stage.addEventListener(Event.RESIZE, onResize);
stage.addEventListener(Event.ENTER_FRAME, onEnterFrame);
onResize(null);
}

private function onResize(e:Event):void {
view.width = stage.stageWidth;
view.height = stage.stageHeight;
}

private function onEnterFrame(e:Event):void {
// User input processing
cameraController.processInput();
// Scene calculating
scene.calculate();
}
}
}

將背景設為暗色,就會發現成功囉 :D

參考來源:
【Alternativa3D】我的第一个DEMO

2008年9月21日 星期日

《 Ubuntu 》安裝SSH,FTP,Samba,Web Server筆記

一年前為了UNIX課程的Demo,要交的文件
拿了課指組的兩台Server做實驗,因為是Public IP且是行政的電腦
不用擔心啥,哈哈...小瓦有福了,嘿嘿

課程:Unix 系統與應用

以下是安裝3種伺服器的過程和紀錄:
OS:Ubuntu 7.04

1. SSH Server

因為 Ubuntu 不像Fedora Core 7 一樣,安裝完之後會預設的安裝 ssh ,所以為了能夠用安全連線的方式來跟伺服器互動,我們必須手動安裝。

// 這是一個類似 Fedora 的 yum 套件庫,我們採用他來進行安裝
apt-get install ssh

// 因為我們並不是用 tarball 安裝 ssh ,但是還是必須瞭解他的設定檔的路徑。
cd /etc/ssh

// 進入設定檔進行修改部份參數。
vim sshd_config

// 以下僅列出修改的地方:
Port 22 -> Port 8822 // 為了使伺服器安全一點的簡單小步驟。
PermitEmptyPasswords no // 透過 ssh 的人密碼不可為空值。
PermitRootLogin no // 為了更加安全不讓 Root 直接用遠端登入。
PrintMotd yes // 開啟顯示上次登入的訊息。
PrintLastLog yes // 顯示上次登入的訊息。

// 重新啟動
/etc/init.d/ssh restart


##CONTINUE##

2. FTP Server

// 一樣使用套件庫進行網路下載安裝。
apt-get install proftpd

// 設定檔路徑
cd /etc/proftpd/

// 進入設定檔進行修改部份參數。
vim proftpd.conf

// 以下僅列出修改的地方:
DefaultRoot ~ // 每個 FTP 使用者預設到家目錄,其他目錄都不能去。
開放anonymous ftp
// 修改並建立會自動登入到由 ftp 擁有的家目錄(/home/ftp/pub),
// 因名取義是給大家下載東西的地方。 並限定不能上傳檔案只能
// 下載< Limit write >。
// FTP 使用者 修改成 nologin可以安全一點。

// 重新啟動
/etc/init.d/proftpd restart

3. Samba Server

// 使用套件庫進行網路下載samba server安裝。
apt-get install samba

// 安裝該套件可以使系統帳號密碼與samba同步。
apt-get install libpam-smbpass

// 進行詳細得設定
vim /etc/samba/smb.conf

// 以下僅列出修改的地方:
Security = user // 必須以使用者登入。
netbios name // 顯示名稱之用。
Smbpasswd username // 新增Samba使用者密碼(因為系統本來就有該帳號)。
encrypt passwords = true // 密碼必須加密。
obey pam restrictions = yes // 引用安裝的libpam-smbpass套件。
unix password sync = true // 啟動與系統密碼同步機制。

// 針對資料夾做設定:
[public_unit2]
path = /tmp
guest ok = yes
writeable = yes

4. Samba Client

安裝好 SMB 要進行測試,最好的方式就是來一個 Client,所以底下進行一連串的測試動作和設定。

// 安裝該套件。
apt-get install samba-common

// 安裝該套件。
apt-get install samba-client

// 測試指令
smbclient '//IP or Domain Name/Partion' -U Username

5. Unix & Samba 密碼同步

vim /etc/pam.d/common-password
// 增加 password sufficient pam_smbpass.so audit use_first_pass

6. Apache Server(Web Server)

參閱 TKWU 老師的 Tarball 安裝方式這邊省略。亦可參閱本站文章。


7. 參考資料
1) Linux Fedora Core 4 實務應用 旗標出版
2) 鳥哥的私房菜 SAMBA 伺服器的基礎設定
3) Chinson's phpBB 討論區 Debian GNU/Linux 的筆記


8. 轉載,請註明出處以及文章連結