Condividi tramite


Modifiche aggiuntive al framework macOS Sierra

Accelerare i miglioramenti del framework

Sono stati apportati i miglioramenti seguenti al framework Accelerate per macOS Sierra:

  • Aggiunta della quadratura (calcolo integrale).
  • Aggiunta di funzioni Di base per la costruzione di reti neurali.
  • Aggiunta di funzioni di predicato geometrico per testare elementi come l'intersezione di due oggetti geometrici.

Miglioramenti del framework AppKit

Sono stati apportati i miglioramenti seguenti a AppKit Framework per macOS Sierra:

  • Diversi miglioramenti a NSCollectionView , ad esempio:
    • Sezioni comprimibili: consente all'utente di comprimere una sezione Visualizzazione raccolta in una singola riga orizzontale.
    • Intestazioni mobili: le intestazioni e i piè di pagina possono ora essere float (in un layout di flusso) usando la stessa API di UICollectionView in iOS.
    • Visualizzazioni sfondo scorrevoli: è ora possibile impostare uno sfondo visualizzazioni raccolta per scorrere insieme al contenuto.
  • Il passaggio del layout di visualizzazione posticipato è stato ottimizzato ed esteso.
  • L'API di trascinamento della selezione include ora le nuove NSFilePromiseProvider classi e NSFilePromiseReceiver per supportare il drag flocking.
  • Sono stati aggiunti diversi costruttori pratici ai controlli esistenti:
    • NSButton include nuovi costruttori per la creazione di pulsanti di scelta, caselle di controllo e pulsanti di opzione.
    • NSTextField include nuovi costruttori per la creazione di etichette di wrapping e senza wrapping, etichette con attributi e campi di testo modificabili.
    • NSSegmentedControl include nuovi costruttori per la creazione di controlli segmentati da un gruppo di etichette o immagini.
    • NSSlider include nuovi costruttori per la creazione di dispositivi di scorrimento lineari orizzontali.
    • NSImageView include nuovi costruttori per la creazione di visualizzazioni di immagini non modificabili da un determinato NSImageoggetto .
  • Il nuovo NSGridView è stato aggiunto al layout automatico di una raccolta di visualizzazioni secondarie in una griglia con righe e colonne di dimensioni variabili che possono essere nascoste o visualizzate in modo dinamico.

Miglioramenti del framework AVFoundation

Sono stati apportati i miglioramenti seguenti al framework AVFoundation per macOS Sierra:

  • In macOS l'app non deve più implementare comportamenti AVPlayerItem diversi in base al tipo di contenuto. È sufficiente impostare la Rate proprietà e AVFoundation determinerà quando è disponibile contenuto sufficiente per la riproduzione senza bloccarsi.
  • La nuova AVPlayerLooper classe semplifica il ciclo di un determinato elemento multimediale durante la riproduzione.
  • La AVAssetDownloadURLSession classe consente il download e la riproduzione successiva dei flussi HLS crittografati FairPlay.

Miglioramenti di Core Data Framework

Sono stati apportati i miglioramenti seguenti a Core Data Framework per macOS Sierra:

  • Gli oggetti NSManagedObjectContext radice supportano errori e recupero simultanei senza serializzazione.
  • La classe NSPersistentStoreCoordinator gestisce un pool di archivi dati SQLite.
  • Gli oggetti NSManagedObjectContext con archivi dati SQLite nella modalità journal WAL supportano la nuova funzionalità di generazione di query in cui i contesti oggetto gestito (MOC) possono essere aggiunti a versioni di database specifiche per il recupero e l'errore delle transazioni future.
  • Uso di alto livello NSPersistenceContainer per fare riferimento NSPersistentStoreCoordinatora , NSManagedObjectModel e altre risorse di configurazione di Core Data.
  • Sono stati aggiunti diversi nuovi metodi pratici per NSManagedObject semplificare l'esecuzione dei recupero e la creazione di sottoclassi.

Per altre informazioni, vedere Informazioni di riferimento sul framework di dati di Base di Apple.

Miglioramenti di Core Image Framework

Sono stati apportati i miglioramenti seguenti a Core Image Framework per macOS Sierra:

  • Il ImageWithExtent metodo della classe CIFilter può essere utilizzato per inserire l'elaborazione personalizzata nell'operazione di filtro. Core Image richiamerà il callback specificato tra i filtri durante l'elaborazione di un'immagine per l'output o la visualizzazione.
  • L'app può ora elaborare le immagini in uno spazio colore esterno allo spazio di lavoro del contesto immagine principale convertendo e fuori dallo spazio colore prima e dopo l'elaborazione.
  • Il kernel Core Image ora può richiedere un formato di output pixel specifico.
  • Sono stati aggiunti i nuovi filtri di immagine seguenti: CINinePartTitled, CINinePartStretched, CIEdgePreserveUpsampleFilterCIHueSaturationValueGradiente CIClamp.

Miglioramenti di Foundation Framework

Sono stati apportati i miglioramenti seguenti a Foundation Framework per macOS Sierra:

  • Usare l'API NSDimentions per rappresentare, convertire e visualizzare molte delle unità fisiche più comuni, ad esempio massa, lunghezza, velocità, durata e temperatura.
  • Usare la classe NSISO8601DateFormatter per l'analisi e la generazione di date formattate ISO 8601.
  • Usare la nuova classe NSDateInterval per eseguire calcoli relativi a intervalli di data e ora, ad esempio le durate, per confrontare gli intervalli e testare le intersezioni degli intervalli.
  • Usare la classe NSPersonNameComponentsFormatter per analizzare gli elementi del nome di una persona da una stringa.
  • Usare la nuova classe NSURLSessionTaskMetrics per ottenere le metriche per una sessione di rete URL.

Per altre informazioni, vedere Le note sulla versione di Apple Foundation per OS X v10.12 e iOS 10.

Miglioramenti del framework GameKit

Sono stati apportati i miglioramenti seguenti al framework GameKit per macOS Sierra:

  • L'app Game Center è stata deprecata e rimossa da macOS. Se l'app usa GameKit, deve presentare la propria interfaccia per visualizzare funzionalità gamekit, ad esempio classifiche e così via.
  • Un nuovo tipo di account solo iCloud è stato implementato dalla classe GKCloudPlayer .
  • La nuova classe GKGameSession offre una soluzione generalizzata per la gestione dell'archiviazione dei dati persistente nel Game Center. GKGameSession mantiene un elenco di giocatori e l'app è responsabile che implementa come e quando la data del partecipante viene archiviata, recuperata o scambiata tra i giocatori. In molte istanze le sessioni di gioco possono sostituire corrispondenze basate su turni esistenti, corrispondenze in tempo reale o metodi di salvataggio permanente del gioco.

Miglioramenti del framework GamePlayKit

Sono stati apportati i miglioramenti seguenti al framework GamePlayKit per macOS Sierra:

  • La generazione di rumore procedurale è stata aggiunta e può essere usata per migliorare il realismo nelle trame dall'aspetto naturale, aggiungere realismo ai movimenti della fotocamera e contribuire a generare mondi di gioco ricchi.
  • Usare il partizionamento spaziale per partizionare i dati del mondo del gioco per una ricerca efficiente.
  • È stato aggiunto un nuovo strategist monte Carlo (GKDestinazioniCarloStrategist) per un calcolo completo possibile dello spostamento.
  • È stata aggiunta una nuova API Decision Tree (GKDecisionTree e GKDecisionNode) per migliorare l'intelligenza artificiale per la creazione di giochi.
  • Il supporto 3D è stato aggiunto ai comportamenti esistenti di individuazione del percorso e dell'agente usando le nuove classi GKAgent3D e GKGraphNode3D .
  • Usare la nuova classe GKMeshGraph per fornire percorsi di ricerca naturale e ad alte prestazioni.
  • Le nuove classi GKScene e GKSKNodeComponent semplificano la combinazione di GameplayKit e SpriteKit che mai.

Miglioramenti di Metal Framework

Sono stati apportati i miglioramenti seguenti a Metal Framework per macOS Sierra:

  • Le app e i giochi 3D possono ora usare Tessellation per eseguire in modo efficiente il rendering di scene e geometrie complesse tramite LA GPU.
  • Usare la specializzazione funzione per creare una raccolta altamente ottimizzata di funzioni di combinazione di materiale e luce per una scena.
  • Fornire un controllo granulare dell'allocazione delle risorse per ottimizzare le prestazioni delle app basate su Metal usando heap delle risorse e destinazioni di rendering senza memoria.

Per altre informazioni, vedere la Guida alla programmazione metal di Apple.

Miglioramenti del framework di I/O del modello

Sono stati apportati i miglioramenti seguenti a Model I/O Framework per macOS Sierra:

  • Il formato di file USD è ora supportato.
  • Usare la nuova MDLMaterialPropertyGraph classe per supportare facilmente le modifiche di runtime ai modelli.
  • Il supporto di Signed Distance Field è stato aggiunto alla classe MDLVoxelArray .
  • Usare la nuova MDLLightProbeIrradianceDataSource classe per facilitare il posizionamento del probe di luce.

Miglioramenti di Foto Framework

Sono stati apportati i miglioramenti seguenti al framework di Foto per macOS Sierra:

Miglioramenti del framework SceneKit

Sono stati apportati i miglioramenti seguenti al framework SceneKit per macOS Sierra:

  • Include ora un nuovo sistema PBR (Physically Based Rendering) per ottenere risultati più realistici con la creazione di asset più semplice.
  • Usare il nuovo modello di ombreggiatura SCNLightingModelPhysicallyBased per ottenere un'ampia gamma di effetti di ombreggiatura realistici, richiedendo al tempo stesso solo tre proprietà fondamentali (DiffuseMetalnesse Roughness).
  • Poiché l'ombreggiatura PBR funziona al meglio con l'illuminazione basata sull'ambiente, usare la LightingEnvironment proprietà per assegnare l'illuminazione basata su immagini all'intera scena.
  • Usare la IESProfileURL proprietà per importare apparecchi di illuminazione reali che definiscono l'illuminazione in base a valori reali, ad esempio intensità (ini) e temperatura del colore (in gradi Kelvin).
  • La classe SCN Fotocamera può offrire maggiore realismo usando funzionalità e effetti HDR. Usa l'esposizione adattiva per creare effetti automatici o usare vignetta, colorazione e gradazione dei colori per aggiungere effetti filmatic al gioco.
  • Entrambe le funzionalità della fotocamera PBR e HDR offrono risultati migliori rispetto alle tecniche di rendering tradizionali e, di conseguenza, SceneKit esegue ora tutti i calcoli dei colori in uno spazio colori lineare (usando la gamma di colori P3 nei dispositivi a colori wide).
  • SceneKit ora corrisponde a tutti i colori leggendo le informazioni sul profilo colore.
  • SceneKit interpreta i valori dei componenti colore in uno spazio di colore RGB lineare per tutti i tipi di shader.
  • Poiché SceneKit legge e modifica le informazioni sul profilo colore nelle immagini di trama, usa Cataloghi asset per tutte le immagini per assicurarsi che queste informazioni vengano fornite.
  • Il rendering dello spazio dei colori lineare e il colore wide possono essere disabilitati specificando le SCNDisableLinearSpaceRendering chiavi e SCNDisableWideGamut nell'app Info.plist.
  • Compilare primati poligoni arbitrari (caricati da file o generati a livello di codice) per specificare la geometria con la nuova classe SCNGeometryPrimitiveTypePolygon .

Miglioramenti del framework di sicurezza

Sono stati apportati i miglioramenti seguenti al framework di sicurezza per macOS Sierra:

  • L'interfaccia SecKey è stata modernizzata e unificata in tutte le piattaforme (iOS, tvOS, watchOS e macOS).

Miglioramenti del framework SpriteKit

Sono stati apportati i miglioramenti seguenti al framework SpriteKit per macOS Sierra:

  • Le mappe affiancate supportano ora forme di riquadri quadratiche, esagonali e isometriche per giochi 2D, 2.5D e scorrimento laterale usando le SKTileMapModeclassi , SKTileGroupSKTileGroupRule e SKTileSet .
  • Usare la nuova SKWarpGeometry classe per estendere o distorcere il rendering di SKSpriteNode o SKEffectNode . La nuova classe SKAction può essere usata per animare le transizioni tra effetti di distorsione.
  • Gli shader personalizzati possono fornire attributi (SKAttribute) che possono essere configurati separatamente da ogni nodo che usa lo shader specificando un valore attributo (SKAttributeValue).
  • La classe SKView fornisce diversi nuovi metodi per fornire un controllo granulare su quando e su come viene eseguito il rendering di una scena.

Nuovi framework

I framework seguenti sono stati aggiunti a macOS Sierra:

  • Framework finalità: questo framework consente all'app di esaminare le interazioni (ad esempio la posizione o le azioni dell'utente) e di intervenire in base a tali informazioni.
  • SafariServices Framework : questo framework consente all'app di sviluppare estensioni dell'app per Safari (ad esempio i blocchi di contenuto) sia per macOS che per iOS.