0
0

More than 5 years have passed since last update.

Xcode8 swift3でのゲームサンプルプロジェクトの実行時エラーについて

Last updated at Posted at 2017-03-05

はじめに

Macを初めて買って意気揚々とGameのサンプルプロジェクトを起動したらエラーが出て悲しみを背負いました。
しかも調べても意外と解決法が出てこなかったので共有しようかなと思い立ちました。
誰かの参考になれば幸いです。

確認環境

Xcode8 Version 8.2.1 (8C1002)
Apple Swift version 3.0.2 (swiftlang-800.0.63 clang-800.0.42.1)

参考
http://qiita.com/s_emoto/items/30d5203db641857a1f75

ぶち当たった問題

Xcodeで新規プロジェクトを作成し、テンプレートに『Game』を選択します。
後はそのまま初期設定のまま進みます。

その状態でエディタ画面まで行くと特に構文などに問題は見当たらないです。
ということでビルドしiOSシュミレータを起動します。
(自分は端末がiPhone6だったのでiPhone6になってますがどれでも問題ないです。)

すると下記のようなエラーが発生します。
xcode8swift3SampleErrorSS.png

解決方法

下記ページが参考になりました。
https://forums.developer.apple.com/thread/60745

ふむふむ、どうやらGameViewController.swiftを下記のように変更すれば動きそうです。

まず、この行を下記のように変更するようです。
func BUFFER_OFFSET(_ i: Int) -> UnsafeRawPointer {

func BUFFER_OFFSET(_ i: Int) -> UnsafeRawPointer? {

で、今度はglVertexPointerのBUFFER_OFFSETを使用している箇所をnilに置き換えるようですね。
glVertexAttribPointer(GLuint(GLKVertexAttrib.position.rawValue), 3, GLenum(GL_FLOAT), GLboolean(GL_FALSE), 24, BUFFER_OFFSET(0))

glVertexAttribPointer(GLuint(GLKVertexAttrib.position.rawValue), 3, GLenum(GL_FLOAT), GLboolean(GL_FALSE), 24, nil)

上記2箇所変更したらもう一度実行して見ます。
すると下記のように動作します!
やったね!
xcode8swift3SammpleBuildSuccessSS.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0