ఏడాదిన్నర నిరంతర అభివృద్ధి తర్వాత, జనవరి 31న, తేలికైన మరియు పోర్టబుల్ క్రాస్-ప్లాట్ఫారమ్ వెక్టర్ గ్రాఫిక్స్ లైబ్రరీ యొక్క 1.0 వెర్షన్ విడుదలైంది. ThorVG, వెక్టర్ దృశ్యాలు మరియు యానిమేషన్లను దృశ్యమానం చేయడానికి రూపొందించబడింది. కింది ఫార్మాట్లలోని ఫైల్లకు మద్దతు ఉంది లోటీ и SVG చిన్న 1.2 (అమలు చేయబడిన SVG టైనీ లక్షణాల జాబితా ప్రాజెక్ట్ వికీలో అందుబాటులో ఉంది.).
లైబ్రరీ అందిస్తుంది అనుకూలమైన APIలు వెక్టర్ గ్రాఫిక్స్ను దిగుమతి చేసుకోవడానికి, సృష్టించడానికి మరియు ప్రదర్శించడానికి, అలాగే వాటిని వివిధ గ్రాఫిక్ ఫార్మాట్లకు ఎగుమతి చేయడానికి, గ్రాఫిక్ కంటెంట్ను దృశ్యమానం చేయడానికి వివిధ సాఫ్ట్వేర్ ప్లాట్ఫారమ్లు మరియు అప్లికేషన్లకు విశ్వవ్యాప్తంగా వర్తించేలా చేస్తుంది. కమాండ్-లైన్ యుటిలిటీలు lottie2gif మరియు svg2png కూడా చేర్చబడ్డాయి.
ThorVG అనేది వెక్టర్ గ్రాఫిక్స్ను ప్రాజెక్టులలో రెండరింగ్ చేయడానికి ఉపయోగించబడుతుంది, ఉదాహరణకు టిజెన్ OS, గోడోట్ ఇంజిన్, LVGL మరియు ఆటగాళ్ళు dotLottie.
ఈ ప్రాజెక్ట్ C++ (C++14 ప్రమాణం)లో వ్రాయబడింది మరియు MIT లైసెన్స్ క్రింద పంపిణీ చేయబడింది.
ఇది కేవలం ఒక నవీకరణ కాదు—ఇది అన్ని ప్లాట్ఫారమ్లు మరియు పరికరాల్లో అధిక-పనితీరు, స్కేలబుల్ మరియు పోర్టబుల్ 2D వెక్టర్ గ్రాఫిక్స్ కోసం పునర్నిర్మించిన పునాది. దాని అభివృద్ధి సమయంలో, ThorVG ఒక పరిణతి చెందిన, ఉత్పత్తికి సిద్ధంగా ఉన్న గ్రాఫిక్స్ ఇంజిన్గా పరిణామం చెందింది, వాస్తవ-ప్రపంచ అనువర్తనాల్లో నిరూపితమైన నాణ్యత మరియు పనితీరును ప్రదర్శిస్తుంది.
ThorVG త్వరగా ప్రజాదరణ పొందింది మరియు సమాజం నుండి పెరుగుతున్న ఆసక్తిని ఆకర్షించింది, ఇది ప్రారంభ దశ ప్రాజెక్ట్ నుండి నిజమైన క్రాస్-ప్లాట్ఫామ్ ఉపయోగం కోసం సిద్ధంగా ఉన్న విస్తృతంగా గుర్తించబడిన మరియు విస్తృతంగా ఉపయోగించబడే వెక్టర్ గ్రాఫిక్స్ ఇంజిన్గా దాని పరిణామాన్ని ప్రతిబింబిస్తుంది.
స్పైసోక్ పదం:
- అధునాతన టెక్స్ట్ రెండరింగ్ సామర్థ్యాలు, గొప్ప విజువల్ ఎఫెక్ట్స్ మరియు మెరుగైన గ్రాఫిక్ వ్యక్తీకరణ కోసం ఖచ్చితమైన ఓవర్లే మద్దతు.
- క్షితిజ సమాంతర మరియు నిలువు అమరికకు మద్దతు వివిధ UI సందర్భాలలో టెక్స్ట్ ప్లేస్మెంట్పై ఖచ్చితమైన నియంత్రణను అనుమతిస్తుంది.
- మోడ్ను ఎంచుకునే సామర్థ్యంతో ఆటోమేటిక్ లైన్ స్ప్లిటింగ్: అక్షరాల ద్వారా, పదాల ద్వారా, స్మార్ట్ స్ప్లిటింగ్ మరియు ఓవర్ఫ్లో హ్యాండ్లింగ్ కోసం ఎలిప్సిస్ ట్రంకేషన్.
- మాన్యువల్ లైన్ బ్రేక్లకు మద్దతు డెవలపర్లు \n వంటి కొత్త లైన్ అక్షరాలను ఉపయోగించి లైన్ బ్రేక్లను స్పష్టంగా నియంత్రించడానికి అనుమతిస్తుంది. ఇది బహుళ-లైన్ టెక్స్ట్ బ్లాక్ల యొక్క ఖచ్చితమైన ఫార్మాటింగ్ను అనుమతిస్తుంది, ముఖ్యంగా డైనమిక్ లేఅవుట్లు లేదా టెక్స్ట్ యానిమేషన్లలో.
- సర్దుబాటు చేయగల అక్షర అంతరానికి మద్దతు, చదవడానికి మెరుగుపరచడానికి లేదా నిర్దిష్ట టైపోగ్రాఫిక్ శైలులను సాధించడానికి చక్కటి ట్యూనింగ్ను అనుమతిస్తుంది.
- టెక్స్ట్ అవుట్లైన్ మద్దతు విభిన్న నేపథ్యాలపై శైలీకృత ప్రభావాలను సృష్టించడానికి మరియు కాంట్రాస్ట్ను మెరుగుపరచడానికి మిమ్మల్ని అనుమతిస్తుంది (స్క్రీన్షాట్ 1).
- మరింత సమగ్రమైన మరియు స్థిరమైన బ్లెండింగ్ మోడ్ వ్యవస్థను ప్రవేశపెట్టారు, ఇది బ్లెండింగ్ మోడ్ ప్రవర్తనను గణనీయంగా మెరుగుపరుస్తుంది మరియు ఫార్ములాలు మరియు కూర్పు తర్కాన్ని లాటీ, SVG మరియు W3C కంపోజిటింగ్ మరియు బ్లెండింగ్ స్పెసిఫికేషన్ వంటి పరిశ్రమ ప్రమాణాలతో సమలేఖనం చేస్తుంది. ఈ మెరుగుదలలు ముఖ్యంగా వెబ్ మరియు యానిమేషన్ వర్క్ఫ్లోలలో ఎక్కువ దృశ్య స్థిరత్వం మరియు క్రాస్-ప్లాట్ఫారమ్ అనుకూలతను అందిస్తాయి.
- HSL కలర్ స్పేస్ కంపోజిటింగ్ ఉపయోగించి, కింది బ్లెండింగ్ మోడ్లు అమలు చేయబడతాయి మరియు మద్దతు ఇవ్వబడతాయి: హ్యూ, సాచురేషన్, కలర్ మరియు ల్యూమినోసిటీ. ఈ మోడ్లు లోటీ లేయర్ ఎఫెక్ట్లతో అనుకూలతను మరియు భవిష్యత్తు SVG బ్లెండింగ్ మద్దతును మెరుగుపరుస్తాయి (స్క్రీన్షాట్ 2).
- దృశ్య-స్థాయి విజువల్ ఎఫెక్ట్లకు గణనీయమైన మెరుగుదలలు మరియు విస్తరణలు, వెక్టర్ గ్రాఫిక్స్ను మరింత వ్యక్తీకరణగా మరియు దృశ్యపరంగా గొప్పగా చేస్తాయి:
- గాస్సియన్ బ్లర్ ఫిల్టర్తో షాడో ఎఫెక్ట్ (వీడియో ప్రదర్శన).
- రంగు ఆధారంగా రంగులు వర్తించే, కలిపే లేదా సరిపోలే విధానాన్ని పునర్నిర్వచించడం ద్వారా గ్రాఫిక్స్ రూపాన్ని మార్చే రంగు భర్తీ పద్ధతులు (వీడియో ప్రదర్శన).
- ఇంటరాక్టివ్ సామర్థ్యాలను మెరుగుపరచడానికి కొత్త సహాయక విధులు జోడించబడ్డాయి. వీటిలో ప్రాదేశిక సమాచార ప్రశ్నలకు మద్దతు ఉంటుంది (ప్రదర్శన) మరియు ప్రదర్శించబడిన వస్తువులపై హిట్ డిటెక్షన్ (వీడియో ప్రదర్శన).
- పరిమాణం, పనితీరు మరియు రెండరింగ్ మోడ్ (CPU/GPU) కోసం ఆప్టిమైజ్ చేయబడిన మాడ్యులర్ వెబ్ ప్లేయర్ ప్రీసెట్లతో సహా క్రాస్-ప్లాట్ఫారమ్ ప్లేబ్యాక్ కోసం మెరుగైన లాటీ యానిమేషన్ సామర్థ్యాలు.
- లాటీ యానిమేషన్ మద్దతుకు గణనీయమైన మెరుగుదలలు అన్ని ప్లాట్ఫామ్లలో అనుకూలత, వశ్యత మరియు ఇంటరాక్టివిటీని మెరుగుపరుస్తాయి. మద్దతు ఉన్న లాటీ ఫంక్షన్లు మరియు వ్యక్తీకరణల పరిధిని విస్తరించడమే కాకుండా, రన్టైమ్లో యానిమేషన్ ప్రవర్తనను డైనమిక్గా నియంత్రించడానికి డెవలపర్ సాధనాలు అందించబడ్డాయి, ఇది థార్విజిని అందుబాటులో ఉన్న అత్యంత శక్తివంతమైన లాటీ ప్లేబ్యాక్ లైబ్రరీలలో ఒకటిగా చేసింది. అమలు చేయబడిన లక్షణాల జాబితా ప్రాజెక్ట్ వికీలో అందుబాటులో ఉంది..
- నేటికి, .lot ఫైల్ ఎక్స్టెన్షన్ అనేది లాటీ ఫైల్ల కోసం కొత్త అధికారిక IANA ప్రమాణం. ThorVG ఇప్పుడు సాంప్రదాయ .json ఎక్స్టెన్షన్తో పాటు, .lotని ప్రామాణిక లాటీ ఫైల్ ఫార్మాట్గా అధికారికంగా సపోర్ట్ చేస్తుంది.
- ట్వినింగ్
- నాన్ లీనియర్గా ప్రక్కనే ఉన్న కీఫ్రేమ్ల మధ్య ఇంటర్పోలేషన్కు మద్దతు జోడించబడింది, ఇది సున్నితమైన పరివర్తనలు మరియు మరింత ఖచ్చితమైన సమయ నియంత్రణను అనుమతిస్తుంది. లాటీలో స్టేట్-బేస్డ్ యానిమేషన్ ప్లేబ్యాక్ (మార్కర్-బేస్డ్ ప్లేబ్యాక్ అని కూడా పిలుస్తారు)తో ఉపయోగించినప్పుడు ఈ మెరుగుదల చాలా ప్రభావవంతంగా ఉంటుంది. చాలా సందర్భాలలో, యానిమేషన్లు సంక్లిష్టమైన, నాన్ లీనియర్ మార్గాల్లో రాష్ట్రాల మధ్య పరివర్తన చెందడానికి రూపొందించబడ్డాయి. సాంప్రదాయ లాటీ, దాని ఖచ్చితమైన సీక్వెన్షియల్ టైమింగ్ నిర్మాణంతో, అటువంటి దృశ్యాలను నిర్వహించడానికి కష్టపడుతుంది, తరచుగా నాన్-సీక్వెన్షియల్ కీఫ్రేమ్ల మధ్య పరివర్తన చెందుతున్నప్పుడు ఆకస్మిక డ్రాప్లు లేదా ఇబ్బందికరమైన జంప్లకు దారితీస్తుంది: వీడియో ప్రదర్శన 1, వీడియో ప్రదర్శన 2.
- ట్వీనింగ్తో, డెవలపర్లు ఇప్పుడు రెండు వ్యక్తిగత కీఫ్రేమ్ల మధ్య నేరుగా ఇంటర్పోలేట్ చేయవచ్చు, అవి టైమ్లైన్లో సరళంగా ప్రక్కనే లేకపోయినా. ఇది స్థితి పరివర్తనల సమయంలో మరింత సహజమైన మరియు మృదువైన విజువల్ ఎఫెక్ట్లను అనుమతిస్తుంది, ఇంటరాక్టివ్ యానిమేషన్ల యొక్క వశ్యత మరియు వాస్తవికతను గణనీయంగా పెంచుతుంది: వీడియో ప్రదర్శన 1, వీడియో ప్రదర్శన 2.
- ఇప్పుడు (ఒక ప్రయోగాత్మక లక్షణంగా), ఎక్స్ప్రెషన్ వేరియబుల్స్ యొక్క రన్టైమ్ రీరైటింగ్కు మద్దతు ఉంది, ఇది స్క్రిప్ట్ లాజిక్ను వినియోగదారు ఇన్పుట్ ఆధారంగా డైనమిక్గా అమలు చేయడానికి అనుమతిస్తుంది. ఇది లాటీ ఆస్తులను ఉపయోగించి ఇంటరాక్టివ్ యానిమేషన్లను సృష్టించడానికి ప్రత్యేకంగా శక్తివంతమైన సాధనంగా చేస్తుంది, అసలు డిజైన్కు మించిన కస్టమ్ వైవిధ్యాలను అనుమతిస్తుంది.వీడియో ప్రదర్శన).
- లాటీ యానిమేషన్ల ద్వారా సూచించబడిన బాహ్య ఆస్తులను (చిత్రాలు వంటివి) లోడ్ చేసేటప్పుడు ఎక్కువ సౌలభ్యాన్ని అందించడానికి అనుకూలీకరించదగిన ఆస్తి పరిష్కరిణి జోడించబడింది.
- Lottie LayerEffect కోసం విస్తరించిన మద్దతు, పైన వివరించిన ప్రభావాలతో యానిమేషన్ లేయర్లకు నేరుగా గొప్ప దృశ్య మెరుగుదలలను వర్తింపజేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
- కొన్ని ప్రభావాలు వనరు-ఇంటెన్సివ్గా ఉంటాయి కాబట్టి, CPU-నిరోధిత ప్లాట్ఫామ్లలో ఆప్టిమైజేషన్కు అనువైన ఎఫెక్ట్ రెండరింగ్ యొక్క నాణ్యత మరియు పనితీరును సర్దుబాటు చేయడానికి ఒక ఎంపిక అందుబాటులో ఉంది. ఇది డెవలపర్లు లక్ష్య ప్లాట్ఫారమ్ను బట్టి రెండరింగ్ విశ్వసనీయతను నియంత్రించడానికి మరియు పనితీరును ఆప్టిమైజ్ చేయడానికి అనుమతిస్తుంది.
- కింది కీలక విధులు మరియు లక్షణాలను జోడించడంతో వ్యక్తీకరణ మద్దతు విస్తరించబడింది:
- విగ్లే, టెంపోరల్ విగ్లే: సమయం ఆధారంగా యాదృచ్ఛిక కదలికను వర్తింపజేయండి.
- pointOnPath: ఒక మార్గం వెంట స్థానాన్ని గణిస్తుంది.
- propertyIndex, groupIndex: ఒక ఆస్తి లేదా సమూహం యొక్క సూచికకు సూచన.
- విలువ, ఆస్తి, ప్రభావం: ఆస్తి విలువలు మరియు బాహ్య ప్రభావాలకు ప్రాప్యత.
- మరింత ఖచ్చితమైన స్పెసిఫికేషన్ సమ్మతి:
- TextFollowPath అనేది టెక్స్ట్ను ఏకపక్ష వెక్టర్ మార్గాలను అనుసరించడానికి అనుమతించే కొత్త స్పెసిఫికేషన్ (వీడియో ప్రదర్శన).
- టెక్స్ట్ అలైన్మెంట్ ఎంపికలు - వాటి క్షితిజ సమాంతర మరియు నిలువు అలైన్మెంట్ సెట్టింగ్ల ఆధారంగా టెక్స్ట్ లేయర్ల యొక్క మరింత ఖచ్చితమైన ప్రదర్శన (వీడియో ప్రదర్శన).
- మాస్క్ విస్తరణ అనేది ఒక కొత్త లక్షణం, ఇది మాస్క్ ఆకారం మీ దృశ్య కూర్పును ఎలా ప్రభావితం చేస్తుందో మరింత ఖచ్చితంగా నియంత్రించడానికి మిమ్మల్ని అనుమతిస్తుంది (వీడియో ప్రదర్శన).
- SVG
- ThorVG ఇప్పుడు SVG సోర్స్ ఫైల్లో నిర్వచించబడిన ప్రత్యేక id లక్షణాలను ఉపయోగించి వ్యక్తిగత SVG ఎలిమెంట్లను యాక్సెస్ చేయడానికి మరియు సవరించడానికి మిమ్మల్ని అనుమతిస్తుంది. ఈ ఫీచర్ డెవలపర్లు దిగుమతి చేసుకున్న SVG సీన్లో నిర్దిష్ట వెక్టర్ ఆకారాలను నేరుగా ఎంచుకోవడానికి మరియు మార్చడానికి అనుమతిస్తుంది, ఇది ఇంటరాక్టివ్ లేదా డైనమిక్ వినియోగ సందర్భాలకు (ఉదా., థీమింగ్, హైలైటింగ్) అనువైనది.
- మద్దతు గాస్సియన్ బ్లర్ ప్రభావం.
- తెలివైన రెండరింగ్
- ThorVG సాఫ్ట్వేర్ ఇంజిన్ ఇప్పుడు తెలివైన పాక్షిక రెండరింగ్కు మద్దతు ఇస్తుంది, ఇది వెక్టార్ దృశ్యంలోని మారిన భాగాలను మాత్రమే నవీకరించడం ద్వారా మరింత సమర్థవంతమైన రెండరింగ్ వర్క్ఫ్లోలను అనుమతిస్తుంది. అంతర్గతంగా మారిన ప్రాంతాలను ట్రాక్ చేయడం ద్వారా, ఇది అనవసరమైన రీడ్రాలను తగ్గిస్తుంది మరియు మొత్తం పనితీరును ఆప్టిమైజ్ చేస్తుంది. ఈ ఫీచర్ UI రెండరింగ్, డిజైన్ సాధనాలు లేదా అప్లికేషన్ల వంటి దృశ్యాలలో గణనీయమైన ప్రయోజనాలను అందిస్తుంది, దీనిలో చాలా దృశ్యం స్థిరంగా ఉంటుంది మరియు ఫ్రేమ్ల మధ్య చిన్న అంశాలు మాత్రమే నవీకరించబడతాయి. అటువంటి సందర్భాలలో, పూర్తి దృశ్య రెండరింగ్ను నివారించడం వలన గణన భారాన్ని గణనీయంగా తగ్గించవచ్చు మరియు శక్తి సామర్థ్యాన్ని మెరుగుపరుస్తుంది, ఇది మొబైల్ మరియు ఎంబెడెడ్ సిస్టమ్లకు చాలా విలువైనది.
- ఈ లక్ష్యాన్ని సాధించడానికి, ThorVG 1.0 పాక్షిక రెండరింగ్ కోసం ప్రత్యేకంగా రూపొందించిన అల్గోరిథమిక్ పద్ధతుల కలయికను ఉపయోగిస్తుంది. ఈ వ్యవస్థకు అంతర్లీనంగా ఉన్న కీలక వ్యూహాలు ఈ క్రింది విధంగా ఉన్నాయి:
- లీనియర్ పాస్ అల్గోరిథం: ఆకారాలు x-కోఆర్డినేట్ల ద్వారా క్రమబద్ధీకరించబడతాయి మరియు మురికి ప్రాంతాల అనవసరమైన తనిఖీలను తగ్గించడానికి లీనియర్ పాస్ వ్యూహాన్ని ఉపయోగిస్తారు. ఇది సంక్లిష్టతను O(N × M) నుండి O(N + M + K + N లాగ్ N)కి తగ్గిస్తుంది, ఇక్కడ N అనేది ఆకారాల సంఖ్య, M అనేది మురికి ప్రాంతాల సంఖ్య మరియు K అనేది వాస్తవ అతివ్యాప్తుల సంఖ్య.
- విభజన మరియు షరతులతో కూడిన విలీనం: ఫ్రాగ్మెంటేషన్ను నివారించడానికి తెలివైన విలీనం ద్వారా సూక్ష్మ-కణిత ఉప-ప్రాంత విభజన సమతుల్యం చేయబడుతుంది. మరింత సమర్థవంతమైన మెమరీ కాష్ వినియోగం కోసం క్షితిజ సమాంతర విలీనం ప్రాధాన్యత ఇవ్వబడుతుంది.
- స్పేషియల్ సబ్ డివిజన్ (డిఫాల్ట్ 4x4 గ్రిడ్): రెండరింగ్ ఉపరితలం 16 ప్రాంతాలుగా విభజించబడింది, ఇది ఆకారాల యొక్క సంబంధిత "మురికి" ప్రాంతాలను మాత్రమే తనిఖీ చేయడానికి అనుమతిస్తుంది, సంక్లిష్ట UI నవీకరణల సమయంలో ఓవర్ హెడ్ను గణనీయంగా తగ్గిస్తుంది.
- కలిసి పనిచేయడం వలన, ఈ పద్ధతులు సున్నితమైన మరియు వేగవంతమైన రెండరింగ్ను అందిస్తాయి, ముఖ్యంగా పాక్షిక నవీకరణలు తరచుగా ఉండే ఎంబెడెడ్ లేదా రియల్-టైమ్ సిస్టమ్లలో. మరిన్ని వివరాలు ప్రత్యేక పోస్ట్లో ప్రచురించబడతాయి. బ్లాగ్ పోస్ట్.
- వేగవంతమైన గేమ్లు లేదా దాదాపు అన్ని వస్తువులు ప్రతి ఫ్రేమ్ను మార్చే పూర్తి-స్క్రీన్ యానిమేషన్ల వంటి అత్యంత డైనమిక్ కంటెంట్ కోసం, పాక్షిక రెండరింగ్ తక్కువ లేదా ఎటువంటి పనితీరు ప్రయోజనాన్ని అందించదు మరియు కొంచెం ఓవర్హెడ్ను కూడా కలిగిస్తుందని దయచేసి గమనించండి. అటువంటి సందర్భాలలో, పూర్తి దృశ్య రెండరింగ్ సాధారణంగా మెరుగైన ఎంపిక. ఈ కారణంగా, ThorVG పాక్షిక మరియు పూర్తి రెండరింగ్ కాన్ఫిగరేషన్లకు మద్దతు ఇస్తుంది, ఇది మీ వినియోగ సందర్భానికి సరైన విధానాన్ని ఎంచుకోవడానికి మిమ్మల్ని అనుమతిస్తుంది. మీరు మీ ఉత్పత్తి పనితీరును విశ్లేషించి, Meson -Dpartial=[true/false] ఎంపికను మరియు SwCanvas తరగతి యొక్క EngineOption::Smart ఎంపికను ఉపయోగించి సమాచారంతో కూడిన నిర్ణయం తీసుకోవచ్చు:
ఆటో కాన్వాస్ = SwCanvas::gen(EngineOption::Smart);
- బ్రౌజర్లో సజావుగా రెండరింగ్ కోసం WebGL, WebGPU మరియు తేలికైన WebCanvasతో వెబ్ ఇంటిగ్రేషన్ యొక్క కొత్త యుగం.
- WebGL మరియు WebGPU బ్యాకెండ్లు ఇప్పుడు అధికారికంగా ఉత్పత్తి వినియోగానికి సిద్ధంగా ఉన్నాయి. ఈ GPU-ఆధారిత రెండరర్లు ఇప్పుడు సాంప్రదాయ CPU బ్యాకెండ్తో పూర్తి ఇంటర్ఆపరేబిలిటీని అందిస్తున్నాయి, అదే చిత్ర నాణ్యత మరియు స్థిరత్వంతో అన్ని ThorVG కాన్వాస్ లక్షణాలకు మద్దతు ఇస్తున్నాయి. వెర్షన్ 0.15 తో పోలిస్తే, GPU రెండరింగ్ పనితీరు 150% కంటే ఎక్కువ పెరిగింది, రియల్-టైమ్ వెబ్ వెక్టర్ గ్రాఫిక్స్ రెండరింగ్లో గణనీయమైన మెరుగుదలను అందించింది.
- CPU/GPU నిర్బంధిత మరియు ఎంబెడెడ్ వాతావరణాలలో గణనీయమైన పనితీరు మెరుగుదలలు
- ThorVG 1.0 వెర్షన్ 0.15 కంటే మెరుగైన పనితీరును అందిస్తుంది, CPU మరియు GPU రెండింటికీ గుర్తించదగిన లాభాలతో.
- కీలక ఆప్టిమైజేషన్లు:
- పైప్లైన్ రెండరింగ్ సామర్థ్యం మెరుగుపడింది.
- తగ్గించబడిన ఫ్రేమ్ బఫర్ కేటాయింపు ఓవర్ హెడ్.
- ఆప్టిమైజ్ చేయబడిన లాటీ కూర్పు విశ్లేషణ.
- మెరుగైన బ్యాచ్ రెండరింగ్ మరియు GPU కాషింగ్.
- GPU వనరులు పరిమితంగా, అందుబాటులో లేని లేదా ఉద్దేశపూర్వకంగా తక్కువగా ఉపయోగించబడే వాతావరణాలలో వెక్టర్ రెండరింగ్పై దృష్టి సారించి, CPU-ఆధారిత రాస్టరైజేషన్ కోసం ThorVG ఆప్టిమైజ్ చేయబడింది. సాధారణ CPU బెంచ్మార్క్లలో, సాధారణ వెక్టర్ రెండరింగ్ పనులను చేసేటప్పుడు విస్తృతంగా ఉపయోగించే స్కియా వెక్టర్ గ్రాఫిక్స్ ఇంజిన్ కంటే ThorVG సగటున 1.8x వేగవంతమైన పనితీరును ప్రదర్శిస్తుంది. ఈ ప్రయోజనం ముఖ్యంగా దీర్ఘచతురస్రాలు, స్ట్రోక్లు, భ్రమణాలు మరియు వృత్తాలు (స్క్రీన్షాట్ 3) రెండరింగ్ వంటి జ్యామితి-ఇంటెన్సివ్ దృశ్యాలలో స్పష్టంగా కనిపిస్తుంది.
- థోర్విజి జానిటర్
- ThorVG యొక్క రెండరింగ్ పనితీరు యొక్క వాస్తవ ప్రపంచ ప్రదర్శనను ప్రాజెక్ట్లో చూడవచ్చు. థోర్విజి జానిటర్ – భారీ గ్రాఫిక్స్ లోడ్లో ప్రాసెసర్ పనితీరును ప్రదర్శించడానికి రూపొందించబడిన ఇంటరాక్టివ్ గేమ్. ఈ సన్నివేశంలో కణ-ఆధారిత గ్రాఫిక్స్ ఉపయోగించి సృష్టించబడిన వందలాది శత్రువులు, పూర్తి-పరిమాణ బిట్మ్యాప్లతో బహుళ-లేయర్డ్ స్టార్రి స్కై నేపథ్యాలు, డ్రాప్షాడో మరియు బ్లర్ వంటి రియల్-టైమ్ విజువల్ ఎఫెక్ట్లు మరియు ఒకేసారి రెండర్ చేయబడిన 25000 వరకు వస్తువులు ఉన్నాయి. 2K రిజల్యూషన్ (2048×1152) వద్ద పీక్ లోడ్లో కూడా, ప్రాజెక్ట్ 120 FPS కంటే ఎక్కువ స్థిరమైన పనితీరును ప్రదర్శిస్తుంది, సంక్లిష్టమైన, ప్రభావ-భారీ వాతావరణాలకు ThorVG యొక్క సామర్థ్యం మరియు అనుకూలతను హైలైట్ చేస్తుంది.వీడియో ప్రదర్శన, స్క్రీన్షాట్).
- ఇతర ముఖ్యమైన మార్పులు
- గోడోట్లో థోర్విజి ఇంటిగ్రేషన్కు ఉదాహరణ. ది ఈ వీడియో ప్రదర్శన థోర్విజి వెబ్ వాతావరణంలో గోడోట్తో అనుసంధానించబడి, సెకనుకు 120 ఫ్రేమ్లకు పైగా వేగంతో వందలాది లాటీ యానిమేషన్ వస్తువులను రెండర్ చేస్తుంది. ఈ డెమో రన్టైమ్లో మృదువైన, అధిక-నాణ్యత యానిమేషన్ కోసం వెబ్ వాతావరణంలో థోర్విజి సామర్థ్యాన్ని ప్రదర్శిస్తుంది.
- చేర్చబడింది బోధనా ఉదాహరణ ThorVG వెబ్కాన్వాస్ను ఉపయోగించడం.
- ఇంటరాక్టివ్ జోడించబడింది థోర్విజి ప్లేగ్రౌండ్.
- స్విఫ్ట్ కోసం ThorVG రేపర్ జోడించబడింది: https://github.com/thorvg/thorvg.swift.
- ThorVG వినియోగ ఉదాహరణలు ప్రత్యేక రిపోజిటరీకి తరలించబడ్డాయి. https://github.com/thorvg/thorvg.example.
- ఎక్స్టెన్షన్ ప్రచురించబడింది thorvg.vscode ద్వారా విజువల్ స్టూడియో కోడ్లోనే ThorVG వనరులను సృష్టించడానికి, సవరించడానికి మరియు ప్రివ్యూ చేయడానికి VSCode కోసం.
- వెర్షన్ 1.0 లో పనితీరు, వినియోగం, స్థిరత్వం మరియు C తో అనుకూలతను మెరుగుపరచడం లక్ష్యంగా ఒక ముఖ్యమైన API పునర్నిర్మాణం ఉంది.
- TVG పిక్చర్ (TVG) ఫార్మాట్కు మద్దతు తొలగించబడింది. యానిమేషన్ను దాని ప్రధాన భావనగా రూపొందించబడిన కొత్త ThorVG పిక్చర్ ఫార్మాట్కు సిద్ధం కావడానికి ఈ నిర్ణయం తీసుకోబడింది.
- ఉత్పత్తి ఉపయోగం కోసం అనేక బగ్ పరిష్కారాలు మరియు స్థిరత్వ మెరుగుదలలు.
మూలం: linux.org.ru
