Partager via


Autres modifications du framework macOS Sierra

Accélération des améliorations apportées à l’infrastructure

Les améliorations suivantes ont été apportées au Framework d’accélération pour macOS Sierra :

  • Ajout de Quadrature (calcul intégral).
  • Ajout de fonctions de base pour la construction de réseaux neuronaux.
  • Ajout de fonctions de prédicat géométrique pour tester des éléments comme l’intersection de deux objets géométriques.

Améliorations apportées à AppKit Framework

Les améliorations suivantes ont été apportées à AppKit Framework pour macOS Sierra :

  • Plusieurs améliorations apportées à NSCollectionView telles que :
    • Sections réductibles : permet à l’utilisateur de réduire une section d’affichage de collection en une seule ligne horizontale.
    • En-têtes flottants : les en-têtes et les pieds de page peuvent désormais être flottants (dans une disposition de flux) à l’aide de la même API que UICollectionView dans iOS.
    • Affichages d’arrière-plan défilants : un arrière-plan vues de collection peut désormais être défini pour faire défiler le contenu.
  • La passe de disposition de la vue différée a été optimisée et étendue.
  • L’API glisser-déplacer inclut désormais les nouvelles NSFilePromiseProvider classes NSFilePromiseReceiver pour prendre en charge le glissement de troupeau.
  • Plusieurs constructeurs pratiques ont été ajoutés aux contrôles existants :
    • NSButtoninclut de nouveaux constructeurs pour créer des boutons push, case activée boxes et des cases d’option.
    • NSTextField inclut de nouveaux constructeurs pour la création d’étiquettes de création d’un wrapper et d’étiquettes non wrapping, d’étiquettes attribuées et de champs de texte modifiables.
    • NSSegmentedControl inclut de nouveaux constructeurs pour créer des contrôles segmentés à partir d’un groupe d’étiquettes ou d’images.
    • NSSlider inclut de nouveaux constructeurs pour créer des curseurs linéaires horizontaux.
    • NSImageView inclut de nouveaux constructeurs pour la création de vues d’images non modifiables à partir d’un élément donné NSImage.
  • Le nouveau NSGridView a été ajouté pour mettre en page automatiquement une collection de sous-vues dans une grille avec des lignes et des colonnes de taille variable qui peuvent être masquées dynamiquement ou affichées.

Améliorations de l’infrastructure AVFoundation

Les améliorations suivantes ont été apportées au framework AVFoundation pour macOS Sierra :

  • Dans macOS, l’application n’a plus besoin d’implémenter différents comportements AVPlayerItem en fonction du type de contenu. Il suffit de définir la Rate propriété et AVFoundation déterminent quand un contenu suffisant est disponible pour la lecture sans bloquer.
  • La nouvelle AVPlayerLooper classe facilite la boucle d’un élément multimédia donné pendant la lecture.
  • La AVAssetDownloadURLSession classe permet le téléchargement et la lecture ultérieure de flux HLS chiffrés FairPlay.

Améliorations de Core Data Framework

Les améliorations suivantes ont été apportées à Core Data Framework pour macOS Sierra :

  • Les objets NSManagedObjectContext racine prennent en charge les erreurs simultanées et l’extraction sans sérialisation.
  • La classe NSPersistentStoreCoordinator gère un pool de magasins de données SQLite.
  • Les objets NSManagedObjectContext avec des magasins de données SQLite dans le mode journal WAL prennent en charge la nouvelle fonctionnalité de génération de requêtes dans laquelle les contextes d’objet managé (MOC) peuvent être épinglés à des versions de base de données spécifiques pour récupérer et effectuer des transactions d’erreur ultérieures.
  • Utilisation du haut niveau NSPersistenceContainer pour référencer les NSPersistentStoreCoordinatorressources de configuration de données principales, NSManagedObjectModel et autres ressources de configuration de données principales.
  • Plusieurs nouvelles méthodes pratiques ont été ajoutées pour NSManagedObject faciliter l’exécution des extractions et la création de sous-classes.

Pour plus d’informations, consultez la référence de Core Data Framework d’Apple.

Améliorations de Core Image Framework

L’amélioration suivante a été apportée à Core Image Framework pour macOS Sierra :

  • La ImageWithExtent méthode de la classe CIFilter peut être utilisée pour insérer un traitement personnalisé dans l’opération de filtre. L’image principale appelle le rappel donné entre les filtres lors du traitement d’une image pour la sortie ou l’affichage.
  • L’application peut désormais traiter des images dans un espace de couleur en dehors de l’espace de couleur de travail du contexte Image principale en convertissant et en dehors de l’espace de couleur avant et après le traitement.
  • Le noyau Core Image peut désormais demander un format de sortie de pixel spécifique.
  • Les nouveaux filtres d’image suivants ont été ajoutés : CINinePartTitled, , CINinePartStretchedCIHueSaturationValueGradient, CIEdgePreserveUpsampleFilter et CIClamp.

Améliorations apportées à Foundation Framework

Les améliorations suivantes ont été apportées au Foundation Framework pour macOS Sierra :

Pour plus d’informations, consultez les notes de publication d’Apple pour OS X v10.12 et iOS 10.

Améliorations apportées à GameKit Framework

Les améliorations suivantes ont été apportées au GameKit Framework pour macOS Sierra :

  • L’application Game Center a été déconseillée et supprimée de macOS. Si l’application utilise GameKit, elle doit présenter sa propre interface pour afficher des fonctionnalités GameKit telles que des classements, etc.
  • Un nouveau type de compte iCloud uniquement a été implémenté par la classe GKCloudPlayer .
  • La nouvelle classe GKGameSession fournit une solution généralisée pour la gestion du stockage de données persistant sur Game Center. GKGameSession gère une liste de joueurs et l’application est responsable de l’implémentation de la façon et du moment où la date du participant est stockée, récupérée ou échangée entre les joueurs. Dans de nombreux cas, les sessions de jeu peuvent remplacer les correspondances basées sur les tournure existantes, les correspondances en temps réel ou les méthodes d’enregistrement de jeu persistantes.

Améliorations apportées à l’infrastructure GamePlayKit

L’amélioration suivante a été apportée au GamePlayKit Framework pour macOS Sierra :

  • La génération de bruit procédural a été ajoutée et peut être utilisée pour améliorer le réalisme dans les textures naturelles, ajouter du réalisme aux mouvements de caméra et aider à générer des mondes de jeu riches.
  • Utilisez le partitionnement spatial pour partitionner les données du monde du jeu pour une recherche efficace.
  • Un nouveau stratège Monte Carlo (GKMonteCarloStrategist) a été ajouté pour un calcul de déplacement possible exhaustif.
  • Une nouvelle API d’arbre de décision a été ajoutée (GKDecisionTree et GKDecisionNode) pour améliorer l’IA de création de jeux.
  • La prise en charge 3D a été ajoutée aux comportements d’agent et de recherche de chemins existants à l’aide des nouvelles classes GKAgent3D et GKGraphNode3D .
  • Utilisez la nouvelle classe GKMeshGraph pour fournir des chemins à haute performance et naturels.
  • Les nouvelles classes GKScene et GKSKNodeComponent facilitent la combinaison du GameplayKit et du SpriteKit que jamais.

Améliorations apportées à Metal Framework

Les améliorations suivantes ont été apportées à Metal Framework pour macOS Sierra :

  • Les applications et jeux 3D peuvent désormais utiliser Tessellation pour restituer efficacement des scènes et des géométries complexes via le GPU.
  • Utilisez la spécialisation de fonction pour créer une collection hautement optimisée de fonctions de combinaison de matériaux et de lumière pour une scène.
  • Fournissez un contrôle précis de l’allocation des ressources pour optimiser les performances des applications metal à l’aide de tas de ressources et de cibles de rendu sans mémoire.

Pour en savoir plus, consultez le Guide de programmation Metal d’Apple.

Améliorations apportées à l’infrastructure d’E/S de modèle

L’amélioration suivante a été apportée à l’infrastructure d’E/S de modèle pour macOS Sierra :

  • Le format de fichier USD est désormais pris en charge.
  • Utilisez la nouvelle MDLMaterialPropertyGraph classe pour prendre en charge facilement les modifications d’exécution apportées aux modèles.
  • La prise en charge du champ distance signée a été ajoutée à la classe MDLVoxelArray .
  • Utilisez la nouvelle MDLLightProbeIrradianceDataSource classe pour faciliter le positionnement de la sonde légère.

Améliorations apportées à l’infrastructure photos

Les améliorations suivantes ont été apportées à l’infrastructure photos pour macOS Sierra :

  • La modification de photos en direct est désormais disponible pour les applications qui prennent en charge l’infrastructure Photos et les extensions d’édition de photos (pour une utilisation à l’intérieur des applications Photos et Caméra).
  • Utilisez la nouvelle classe PHLivePhotoEditingContext pour appliquer des modifications à la fois à la vidéo et au contenu des photos en direct.
  • Utilisez les classes CIImageProcessorInput et CIImageProcessorOutput pour tirer parti de la nouvelle fonctionnalité de processeur d’images core pour effectuer des modifications.
  • Pour prendre en charge Live Photos, les classes PHLivePhoto et PHLivePhotoView ont été transférées d’iOS vers macOS.

Améliorations apportées à SceneKit Framework

Les améliorations suivantes ont été apportées au SceneKit Framework pour macOS Sierra :

  • Inclut désormais un nouveau système PBR (Physically Based Rendering) pour obtenir des résultats plus réalistes avec une création de ressources plus simple.
  • Utilisez le nouveau modèle d’ombrage SCNLightingModelPhysicalBased pour produire un large éventail d’effets d’ombrage réalistes tout en nécessitant seulement trois propriétés fondamentales (DiffuseMetalnesset Roughness).
  • Étant donné que l’ombrage PBR fonctionne le mieux avec l’éclairage basé sur l’environnement, utilisez la propriété pour affecter l’éclairage basé sur l’image LightingEnvironment à la scène entière.
  • Utilisez la IESProfileURL propriété pour importer des appareils lumineux réels qui définissent la base de l’éclairage sur des valeurs réelles, telles que l’intensité (en intervalles) et la température de couleur (en degrés Kelvin).
  • La classe SCNCamera peut fournir un plus grand réalisme à l’aide de fonctionnalités et d’effets HDR. Utilisez l’exposition adaptative pour créer des effets automatiques ou utiliser le vignetage, le fring de couleur et la notation de couleur pour ajouter des effets filmatiques au jeu.
  • Les fonctionnalités de caméra PBR et HDR fournissent de meilleurs résultats que les techniques de rendu traditionnelles et, par conséquent, SceneKit effectue désormais tous les calculs de couleurs dans un espace de couleurs linéaire (à l’aide de la gamme de couleurs P3 sur les écrans d’appareils à grande couleur).
  • SceneKit correspond désormais à toutes les couleurs en lisant les informations de profil de couleur.
  • SceneKit interprète les valeurs des composants de couleur dans un espace de couleur RVB linéaire pour tous les types de nuanceurs.
  • Étant donné que SceneKit lit et ajuste les informations de profil de couleur dans les images de texture, utilisez les catalogues de ressources pour toutes les images pour vous assurer que ces informations sont fournies.
  • Le rendu de l’espace de couleur linéaire et la couleur large peuvent être désactivés en spécifiant les clés et SCNDisableWideGamut les SCNDisableLinearSpaceRendering clés de Info.plistl’application.
  • Créez des polygones arbitraires (chargés à partir de fichiers ou générés par programme) pour spécifier la géométrie avec la nouvelle classe SCNGeometryPrimitiveTypePolygon .

Améliorations apportées à Security Framework

Les améliorations suivantes ont été apportées au Framework de sécurité pour macOS Sierra :

  • L’interface SecKey a été modernisée et unifiée sur toutes les plateformes (iOS, tvOS, watchOS et macOS).

Améliorations apportées à SpriteKit Framework

Les améliorations suivantes ont été apportées au SpriteKit Framework pour macOS Sierra :

  • Les mosaïques prennent désormais en charge les formes de mosaïques carrées, hexagonales et isométriques pour les jeux 2D, 2,5D et de défilement latéral à l’aide des classes et SKTileSet des SKTileMapModeSKTileGroupSKTileGroupRule classes.
  • Utilisez la nouvelle SKWarpGeometry classe pour étirer ou fausser le rendu SKSpriteNode ou SKEffectNode . La nouvelle classe SKAction peut être utilisée pour animer des transitions entre les effets de warp.
  • Les nuanceurs personnalisés peuvent fournir des attributs (SKAttribute) qui peuvent être configurés séparément par chaque nœud qui utilise le nuanceur en fournissant une valeur d’attribut (SKAttributeValue).
  • La classe SKView fournit plusieurs nouvelles méthodes pour donner un contrôle précis sur le moment et le rendu d’une scène.

Nouvelles infrastructures

Les frameworks suivants ont été ajoutés à macOS Sierra :

  • Intents Framework : cette infrastructure permet à l’application d’examiner les interactions (telles que l’emplacement ou les actions de l’utilisateur) et de prendre des mesures en fonction de ces informations.
  • SafariServices Framework : cette infrastructure permet à l’application de développer des extensions d’application pour Safari (comme des bloqueurs de contenu) pour macOS et iOS.