A method and system for controlling the algorithmic elements in 3D graphics
systems via an improved 3D graphics API is provided. In one aspect, in a
3D graphics system having privatized formats with privatized drivers used
to increase the efficiency of display, existing problems are eliminated
that are associated with multiple redundant copies of the publicly
formatted graphics data made in host system memory pursuant to various
graphics operations e.g., lock and unlock operations. The ability to make
a system copy of publicly formatted data is exposed to the developer,
eliminating the creation of unnecessary, and redundant copies. Efficient
switching between the privatized and public format remains hidden from the
developers so that applications execute efficiently while removing
consideration thereof from the developers. Thus, developers are free to
consider other tasks. In the event that a developer wishes to make a copy
of the data, the data is copied pursuant to an operation that the
developer calls and over which the developer has control, ensuring that
multiple redundant copies of the graphics data are not made in host system
memory.
Een methode en een systeem om de algoritmische elementen in 3D grafieksystemen via worden een betere 3D grafiek API te controleren verstrekt. In één aspect, in een 3D grafieksysteem dat formaten met geprivatiseerde bestuurders heeft die worden gebruikt geprivatiseerd om de efficiency van vertoning te verhogen, worden de bestaande problemen geëlimineerd die met veelvoudige overtollige exemplaren van de openbaar geformatteerde grafiekgegevens geassocieerd worden die in het geheugen van het gastheersysteem overeenkomstig diverse grafiekverrichtingen b.v. worden gemaakt, slot en verrichtingen openen. De capaciteit wordt om een systeemcopie van openbaar geformatteerde gegevens te maken blootgesteld aan de ontwikkelaar, eliminerend de verwezenlijking van onnodige, en overtollige exemplaren. De efficiënte omschakeling tussen het geprivatiseerde en openbare formaat blijft verborgen van de ontwikkelaars zodat de toepassingen efficiënt terwijl daarvan het verwijderen van overweging uit de ontwikkelaars uitvoeren. Aldus, zijn de ontwikkelaars vrij om andere taken te overwegen. In het geval dat een ontwikkelaar wenst om een copie van de gegevens te maken, wordt het gegeven gekopieerd overeenkomstig een verrichting die de ontwikkelaar roept en waarover de ontwikkelaar controle heeft, ervoor zorgend dat de veelvoudige overtollige copieën van de grafiekgegevens niet in het geheugen van het gastheersysteem worden gemaakt.