mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-11-10 04:57:26 +01:00
internal/atlas: move some functions in internal/restorable to internal/atlas
Updates #805
This commit is contained in:
parent
d7a098d973
commit
3651d73e0b
@ -126,6 +126,8 @@ var (
|
|||||||
imagesToPutOnSourceBackend smallImageSet
|
imagesToPutOnSourceBackend smallImageSet
|
||||||
|
|
||||||
imagesUsedAsDestination smallImageSet
|
imagesUsedAsDestination smallImageSet
|
||||||
|
|
||||||
|
graphicsDriverInitialized bool
|
||||||
)
|
)
|
||||||
|
|
||||||
type ImageType int
|
type ImageType int
|
||||||
@ -627,6 +629,10 @@ func (i *Image) canBePutOnAtlas() bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (i *Image) allocate(forbiddenBackends []*backend, asSource bool) {
|
func (i *Image) allocate(forbiddenBackends []*backend, asSource bool) {
|
||||||
|
if !graphicsDriverInitialized {
|
||||||
|
panic("atlas: graphics driver must be ready at allocate but not")
|
||||||
|
}
|
||||||
|
|
||||||
if i.backend != nil {
|
if i.backend != nil {
|
||||||
panic("atlas: the image is already allocated")
|
panic("atlas: the image is already allocated")
|
||||||
}
|
}
|
||||||
@ -806,7 +812,7 @@ func BeginFrame(graphicsDriver graphicsdriver.Graphics) error {
|
|||||||
|
|
||||||
var err error
|
var err error
|
||||||
initOnce.Do(func() {
|
initOnce.Do(func() {
|
||||||
err = restorable.InitializeGraphicsDriverState(graphicsDriver)
|
err = graphicscommand.InitializeGraphicsDriverState(graphicsDriver)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
@ -822,8 +828,10 @@ func BeginFrame(graphicsDriver graphicsdriver.Graphics) error {
|
|||||||
minDestinationSize = 16
|
minDestinationSize = 16
|
||||||
}
|
}
|
||||||
if maxSize == 0 {
|
if maxSize == 0 {
|
||||||
maxSize = floorPowerOf2(restorable.MaxImageSize(graphicsDriver))
|
maxSize = floorPowerOf2(graphicscommand.MaxImageSize(graphicsDriver))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
graphicsDriverInitialized = true
|
||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -52,10 +52,6 @@ type Image struct {
|
|||||||
//
|
//
|
||||||
// Note that Dispose is not called automatically.
|
// Note that Dispose is not called automatically.
|
||||||
func NewImage(width, height int, imageType ImageType) *Image {
|
func NewImage(width, height int, imageType ImageType) *Image {
|
||||||
if !graphicsDriverInitialized {
|
|
||||||
panic("restorable: graphics driver must be ready at NewImage but not")
|
|
||||||
}
|
|
||||||
|
|
||||||
i := &Image{
|
i := &Image{
|
||||||
Image: graphicscommand.NewImage(width, height, imageType == ImageTypeScreen),
|
Image: graphicscommand.NewImage(width, height, imageType == ImageTypeScreen),
|
||||||
width: width,
|
width: width,
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
// Copyright 2017 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.
|
|
||||||
|
|
||||||
package restorable
|
|
||||||
|
|
||||||
import (
|
|
||||||
"github.com/hajimehoshi/ebiten/v2/internal/graphicscommand"
|
|
||||||
"github.com/hajimehoshi/ebiten/v2/internal/graphicsdriver"
|
|
||||||
)
|
|
||||||
|
|
||||||
var graphicsDriverInitialized bool
|
|
||||||
|
|
||||||
// InitializeGraphicsDriverState initializes the graphics driver state.
|
|
||||||
func InitializeGraphicsDriverState(graphicsDriver graphicsdriver.Graphics) error {
|
|
||||||
graphicsDriverInitialized = true
|
|
||||||
return graphicscommand.InitializeGraphicsDriverState(graphicsDriver)
|
|
||||||
}
|
|
||||||
|
|
||||||
// MaxImageSize returns the maximum size of an image.
|
|
||||||
func MaxImageSize(graphicsDriver graphicsdriver.Graphics) int {
|
|
||||||
return graphicscommand.MaxImageSize(graphicsDriver)
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user