Skip to content

Commit

Permalink
Adjust Font isolation
Browse files Browse the repository at this point in the history
  • Loading branch information
STREGA committed May 2, 2023
1 parent b4427e4 commit 12b2635
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ fileprivate func getBakedQuad(characterData: [CharData], pixelsWidth: Int32, pix
self.characterDatas[key] = charData
}

var preferredSampleFilter: Text.SampleFilter {.linear}
nonisolated var preferredSampleFilter: Text.SampleFilter {.linear}
}

#endif
10 changes: 5 additions & 5 deletions Sources/GateEngine/System/Rendering/Resources/Text/Font.swift
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ struct AlignedCharacter {
}

protocol FontBackend {
var preferredSampleFilter: Text.SampleFilter {get}
nonisolated var preferredSampleFilter: Text.SampleFilter {get}
@MainActor mutating func texture(forKey key: Font.Key) -> Texture
mutating func characterData(forKey key: Font.Key, character: Character) -> CharacterData
mutating func alignedCharacter(forKey key: Font.Key, character: Character, origin: Position2, xAdvance: inout Float) -> AlignedCharacter
@MainActor mutating func characterData(forKey key: Font.Key, character: Character) -> CharacterData
@MainActor mutating func alignedCharacter(forKey key: Font.Key, character: Character, origin: Position2, xAdvance: inout Float) -> AlignedCharacter
}

public class Font: OldResource {
Expand Down Expand Up @@ -77,12 +77,12 @@ public class Font: OldResource {
}
}

func characterData(forCharacter character: Character, pointSize: UInt, style: Font.Style) -> CharacterData {
@MainActor func characterData(forCharacter character: Character, pointSize: UInt, style: Font.Style) -> CharacterData {
let key = Key(style: style, pointSize: pointSize)
return backend.characterData(forKey: key, character: character)
}

func alignedCharacter(forCharacter character: Character, pointSize: UInt, style: Font.Style, origin: Position2, xAdvance: inout Float) -> AlignedCharacter {
@MainActor func alignedCharacter(forCharacter character: Character, pointSize: UInt, style: Font.Style, origin: Position2, xAdvance: inout Float) -> AlignedCharacter {
let key = Key(style: style, pointSize: pointSize)
return backend.alignedCharacter(forKey: key, character: character, origin: origin, xAdvance: &xAdvance)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ public final class Text {
#endif
}

private static func rawGeometry(fromString string: String, font: Font, pointSize: Float, style: Font.Style, paragraphWidth: Float?, interfaceScale: Float) -> (RawGeometry, Size2) {
@MainActor private static func rawGeometry(fromString string: String, font: Font, pointSize: Float, style: Font.Style, paragraphWidth: Float?, interfaceScale: Float) -> (RawGeometry, Size2) {
let roundedPointSize = UInt(pointSize.rounded())

var triangles: [Triangle] = []
Expand Down

0 comments on commit 12b2635

Please sign in to comment.