internal/ui: separate graphics_ios.go to each archtecture

This change removes the support of 32bit iOS. 32bit iOS is no longer
supported by Go 1.15.
This commit is contained in:
Hajime Hoshi 2022-02-12 02:12:47 +09:00
parent 162f62f54e
commit ab5daa0f90
2 changed files with 32 additions and 11 deletions

View File

@ -0,0 +1,28 @@
// Copyright 2022 The Ebiten Authors
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//go:build ios && !ebitengl && !ebitencbackend
// +build ios,!ebitengl,!ebitencbackend
package ui
import (
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver"
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver/opengl"
)
func Graphics() graphicsdriver.Graphics {
// Metal might not be supported on emulators on Intel machines.
return opengl.Get()
}

View File

@ -18,21 +18,14 @@
package ui
import (
"fmt"
"runtime"
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver"
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver/metal"
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver/opengl"
)
func Graphics() graphicsdriver.Graphics {
if runtime.GOARCH == "386" || runtime.GOARCH == "amd64" {
return opengl.Get()
g := metal.Get()
if g == nil {
panic("ui: Metal is not available on this iOS device")
}
if metal.Get() == nil {
panic(fmt.Sprintf("ui: Metal is not available on this iOS device"))
}
return metal.Get()
return g
}