Ticket #38900

iOS版 アンチエイリアシング描画対応

Open Date: 2019-01-28 00:20 Last Update: 2019-01-31 23:40

Reporter:
Owner:
Status:
Closed
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None

Details

アンチエイリアシング描画に対応する。

iPhone,iPadは画面解像度が高いため、描画処理でアンチエイリアシングを有効にしなくても、 違いが判別できないほどであったため、これまで対応してこなかった。

しかしVRゴーグルを使ってVR体験する場合、iPhoneの画面をレンズで拡大するため、 画面のジャギーが気になってしまう。そこで、アンチエイリアシングに対応することにした。

ただし、アンチエイリアシングを有効にすると、描画速度が落ちるため、 設定画面で有効/無効を選択できるようにする。デフォルトは無効とする。

Ticket History (3/3 Histories)

2019-01-28 00:20 Updated by: yknk
  • New Ticket "iOS版 アンチエイリアシング描画対応" created
2019-01-28 00:21 Updated by: yknk
Comment

対策1 アプリケーションメイン

MIDITrailApp::initialize

グラフィック設定読み込みメソッド loadGraphicConf 呼び出しを追加。

MIDITrailApp::loadGraphicConf

グラフィック設定読み込みメソッドを追加。 macOS版と同じユーザ設定項目から読み込む。 アンチエイリアシングの有効/無効のみを読み込む。サンプルモードとサンプル数は読み込まない。 iOS版では、サンプルモードとサンプル数はをユーザ設定に登録しないため。

MTMainViewCtrl

メインビュー制御クラスのメンバに、アンチエイリアシング用のフレームバッファとレンダーバッファを追加。 (m_MSAAFrameBuffer, m_MSAAColorRenderBuffer, m_MSAADepthRenderBuffer) これに伴い既存メンバ(フレームバッファとレンダーバッファ)の名称を変更。 (m_DefaultFrameBuffer, m_DefaultColorRenderBuffer, m_DefaultDepthRenderBuffer)

MTMainViewCtrl::initWithNibName

追加したメンバの初期化処理を追加。

MTMainViewCtrl::initializeOpenGLContext

アンチエイリアシング用のフレームバッファとレンダーバッファの生成処理を追加。

MTMainViewCtrl::terminateOpenGLContext

フレームバッファとレンダーバッファの破棄処理を追加。

MTMainViewCtrl::initialize

バッファクリア処理の引数を追加。

MTMainViewCtrl::drawProc

アンチエイリアシングが有効な場合に、アンチエイリアシング用のフレームバッファとレンダーバッファを バインドする処理を追加。

対策2 設定ビュー

MTSettingViewCtrl::numberOfSectionsInTableView

Graphicセクション追加に伴い、セクション数を8から9に変更。

MTSettingViewCtrl::tableView titleForHeaderInSection

Graphicセクションを追加。

MTSettingViewCtrl::tableView numberOfRowsInSection

Graphicセクションの項目数を追加。

MTSettingViewCtrl::tableView cellForRowAtIndexPath

Graphicセクションのセル作成処理を追加。

MTSettingViewCtrl::makeGraphicCellForIndexPath

Graphicセクションのセル作成メソッドを追加。

MTSettingViewCtrl::tableView didSelectRowAtIndexPath

Graphicセクションのセル選択時の処理を追加。

MTSettingViewCtrl::onSelectGraphicCellForIndexPath

Graphicセクションのセル選択メソッドを追加。

2019-01-31 23:40 Updated by: yknk
  • Status Update from Open to Closed
  • Resolution Update from None to Fixed

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login