2011-02-07 31 views
7

Tôi đã triển khai ứng dụng Thực tế Augmented cho Android bằng Adobe Air cho Android, FLARManager, Away3DLite. Chương trình hoạt động tốt trên flash, Tuy nhiên khi tôi xuất bản trên điện thoại di động (HTC Nexus One) hoặc chạy trên trình giả lập, máy ảnh của tôi không kích hoạt và tất cả những gì tôi có thể thấy là màu nền và hiển thị tốc độ khung hình.Sự cố với việc Máy ảnh hoạt động trên Xa3DLite

Tôi nghĩ rằng vấn đề là Camera3D mà tôi đã sử dụng là FLARCamera_Away3DLite từ FLARManager.

Đây là cách tôi đặt máy ảnh của tôi

import com.transmote.flar.camera.FLARCamera_Away3DLite; 

private var camera3D:FLARCamera_Away3DLite; 

this.camera3D = new FLARCamera_Away3DLite(this.flarManager, new Rectangle(0, 0, this.stage.stageWidth, this.stage.stageHeight)); 

Tôi sẽ thực sự đánh giá cao lời khuyên nào tôi có thể nhận được từ bạn.

Cảm ơn bạn George

+0

Bạn đã cố gắng thêm người nghe cho các sự kiện lỗi khi bạn tải của bạn collada? BTW, tôi thà dùng Away3D thay vì Papervision3D. Away3D được tối ưu hóa hơn với bộ nhớ thấp hơn –

+0

@ Florian F Cảm ơn lời khuyên của bạn. Tôi có cần FLARManager để sử dụng Away3D không? Tôi tìm thấy Away3D Lite là tốt hơn bạn nghĩ? – Apollon1954

+0

Tôi chưa bao giờ sử dụng FLARToolkit vì vậy tôi không biết là có sự phụ thuộc với các lớp Papervision. Có Away3D Lite là những gì tôi đã nói về –

Trả lời

3

Tôi nghĩ rằng bạn nghĩ sai về lớp máy ảnh. Lớp máy ảnh bạn sử dụng là máy ảnh trong thế giới 3D "ảo" của bạn và nó đang quay phim thế giới 3d của bạn. Các "bộ phim" sau đó làm cho đi đến lớp Xem có thể hiển thị thế giới 3d của bạn đến 2d. Màn hình của bạn là màn hình 2ngày và không có khả năng hiển thị 3d. Lớp máy ảnh kết hợp với chế độ xem chuyển đổi cảnh 3D của bạn thành hình ảnh 2D hiển thị trên màn hình của bạn.

Nhưng vì bạn muốn tạo một ứng dụng AR, nghĩa là máy ảnh của điện thoại. Bạn không thể sử dụng lớp máy ảnh Away 3d cho việc này. This tutorial cho biết cách sử dụng máy ảnh của điện thoại Andriod của bạn trong nháy mắt.

Các bước bạn muốn thực hiện là bạn nhận được nguồn cấp dữ liệu phonecamera và qua quá trình này trên màn hình. Sau đó, sử dụng FLARtoolkit để xác định vị trí của điểm đánh dấu của bạn. Và sau đó điều chỉnh mô hình 3D đến vị trí của điểm đánh dấu. Và cuối cùng nhưng không kém phần hiển thị mô hình 3D trên màn hình (bằng cách sử dụng máy ảnh và camera xem 3d/papervision). Vì vậy, về cơ bản bạn có 2 lớp trong ứng dụng flash của bạn. 1 lớp nền là nguồn cấp dữ liệu của phonecamera của bạn và lớp khác (trên đầu trang của nó) là quan điểm của bạn từ xa3d hoặc papervision.

Tôi nghĩ rằng nếu bạn kết hợp những hướng dẫn bạn có thể làm cho ứng dụng của bạn:

+0

@SynerCoder Cảm ơn bạn đã trả lời. Tôi đã wathed tất cả các video trước đó, nhưng ngay cả khi ứng dụng của tôi không hoạt động trên điện thoại Android của tôi. Tôi đã thực hiện các ứng dụng bằng cách sử dụng papervision3D và máy ảnh hoạt động tốt nhưng ứng dụng đã quá chậm và nó bị treo. Vấn đề mà tôi có là để kết hợp tất cả các nhân viên này với Away3DLite để làm cho nó hoạt động trên điện thoại Android.Tôi không thể tìm thấy bất kỳ ứng dụng hoặc hướng dẫn cho thực tế Augmented có sử dụng Away3DLite cho Android và tôi đang suy nghĩ nếu đó là trùng hợp ngẫu nhiên hoặc có một lý do khác. – Apollon1954

+0

@ Apollon1954 xin lỗi nhưng tôi không biết nhiều hơn nữa. Tôi không có điện thoại android vì vậy tôi không thể bắt đầu lập trình và kiểm tra mọi thứ. Nhưng nếu bạn có bất kỳ lỗi liên quan đến flash hoặc ngoại lệ, tôi nghĩ rằng tôi có thể giúp bạn. (Muốn có điện thoại droid làm điện thoại tiếp theo của tôi) – SynerCoder

+0

@SynerCoder Cảm ơn bạn rất nhiều vì đã giúp đỡ! – Apollon1954

Các vấn đề liên quan