Starling

Софтуер снимки:
Starling
Софтуер детайли:
Версия: 1.7 актуализира
Дата на качване: 19 Jul 15
Розробник: Daniel Sperl
Разрешително: Безплатно
Популярност: 47

Rating: 2.0/5 (Total Votes: 2)

Старлинг е много сложен и усъвършенстван инструмент, на който могат да бъдат създадени професионални Флаш игри на.
Старлинг всъщност е играта на двигателя, на която широко успешна игра Angry Birds е бил кодиран (на Flash версия).
Двигателят се фокусира основно върху изпълнението и на светъл размер, като се възползват пълноценно от Stage3D функция Flash е

Какво ново в тази версия:.

<ул >

  • клас Публикувана "Sprite3D" за прости 3D трансформации
  • Добавено 3D методи за трансформация на DisplayObject, RenderSupport и MatrixUtil класове

  • <> Li Добавено 3D камера свойства към етапа клас ("fieldOfView", "focalLength", "projectionOffset")
  • имот Публикувана "is3D" да DisplayObject клас
  • Добавена натоварване успоредно актив да AssetManager клас (чрез имущество "numConnections")
  • Добавено изгради скриптове за Gradle и Maven (благодарение на Андраш Csizmadia & Honza Brecka)

  • <> Li добавени автоматични тестове за интеграция TravisCI (благодарение на Андраш Csizmadia & Honza Brecka)
  • Добавено "RenderTexture.optimizePersistentBuffers" да се даде възможност за един буферен правят текстури
  • Добавена е поддръжка за вложени филтри (благодарение на AIR 15)
  • Добавена е поддръжка за изготвяне филтрират предмети, за да направи текстури
  • Добавена е поддръжка за HTML текст в клас "TextField" (TrueType шрифтове само)
  • Публикувана "цвят" имущество да Button клас
  • Публикувана "над" и "инвалиди" гласи да Button клас
  • Публикувана "наслагване" имущество да Button клас
  • метод Публикувана "readjustSize" да Button клас
  • полезност метод Добавено "hasChars" да BitmapFont клас
  • полезност метод Добавено "getCharIDs" да BitmapFont клас
  • Публикувана "текстура" имущество да BitmapFont клас
  • Публикувана "textureFormat" имущество да AssetManager клас
  • имот Публикувана "isLoading" да AssetManager клас
  • имот Публикувана "textureRepeat" да AssetManager клас
  • събитие Публикувана "IO_ERROR" да AssetManager клас (при зареждане от URLLoader не успее)
  • "PARSE_ERROR" събитие Добавено да AssetManager клас (благодарение на Thomas Лефевр)
  • събитие Публикувана "SECURITY_ERROR" да AssetManager клас (благодарение на Honza Brecka)
  • Добавена някои "защитени", класирали до AssetManager методи, за по-добра разтегливост
  • "FATAL_ERROR" събитие Добавено към Старлинг клас (благодарение на Андраш Csizmadia)
  • "stopWithFatalError метод" Добавено към Старлинг клас
  • имот Публикувана "backBufferPixelsPerPoint" да Старлинг клас
  • параметър Публикувана "ignoreChildOrder" на "Sprite.flatten ()" (благодарение на vync79)
  • метод полезност Публикувана "cleanMasterString" (благодарение на Jackson Дънстън)
  • Добавено ByteArray-аварийната ако AssetManager не може да анализира, XML или JSON
  • Добавено способността за верига ColorMatrixFilter функции (благодарение на Tim Conkling)
  • Публикувана "стандарт" профил за автоматично избиране на профила
  • имот Публикувана "supportsRelaxedTargetClearRequirement" да SystemUtil клас
  • Публикувана "формат" и доводи "повтарящи се" до RenderTexture конструктор
  • имот Публикувана "soundTransform" да MovieClip клас (благодарение на Kawika Heftel)
  • "setQuad метод" Добавено да QuadBatch клас
  • Добавено MathUtil клас
  • проекти и модулни Добавено файлове за IntelliJ IDEA
  • Добавено помощник скрипт "copy_resources.rb" за IntelliJ IDEA
  • Оптимизиран: персистираща правят текстури вече не се нуждаят от двойно буфериране (благодарение на AIR 15)
  • Оптимизиран всички вътрешни XML разбор (благодарение на JohnHeart & Andrew Pellerano)
  • Оптимизиран BitmapFont състав - сега обединяване на всички временни обекти
  • Оптимизиран за управление на паметта за някои вътрешно използва BitmapData (TextField, MiniBitmapFont)
  • Оптимизиран "TextureAtlas.getNames" от кеширане сортирани списък с имена
  • Оптимизиран "TextureAtlas.getTexture", като винаги се връщат случаите същия SubTexture
  • Оптимизиран "DisplayObject.removeEventListeners" (благодарение на Fraggle)
  • Оптимизиран "AssetManager.loadQueue" чрез преработка на шрифта / атлас XML файловете в отделни стъпки
  • Оптимизиран метод "advanceTime" в MovieClip клас
  • Оптимизиран "изпълни" функция, като се избягва "Array.slice"
  • Оптимизиран боравене с преминаване текстури в FragmentFilter (избягване шанс на препратка нула)
  • Оптимизиран AOT производителност чрез избягване на "Array.push" на няколко места
  • Оптимизиран скеле и Демо проекти, така че те вече не се нуждаят внедрен фоново текстура
  • Какво ново във версия 1.6 / 1.7 RC:

    • клас Публикувана "Sprite3D" за прости 3D трансформации
    • Добавено 3D методи за трансформация на DisplayObject, RenderSupport и MatrixUtil класове

    • <> Li Добавено 3D камера свойства към етапа клас ("fieldOfView", "focalLength", "projectionOffset")
    • имот Публикувана "is3D" да DisplayObject клас
    • Добавена натоварване успоредно актив да AssetManager клас (чрез имущество "numConnections")
    • Добавено изгради скриптове за Gradle и Maven (благодарение на Андраш Csizmadia & Honza Brecka)

    • <> Li добавени автоматични тестове за интеграция TravisCI (благодарение на Андраш Csizmadia & Honza Brecka)
    • Добавено "RenderTexture.optimizePersistentBuffers" да се даде възможност за един буферен правят текстури
    • Добавена е поддръжка за вложени филтри (благодарение на AIR 15)
    • Добавена е поддръжка за изготвяне филтрират предмети, за да направи текстури
    • Добавена е поддръжка за HTML текст в клас "TextField" (TrueType шрифтове само)
    • Публикувана "цвят" имущество да Button клас
    • Публикувана "над" и "инвалиди" гласи да Button клас
    • Публикувана "наслагване" имущество да Button клас
    • метод Публикувана "readjustSize" да Button клас
    • полезност метод Добавено "hasChars" да BitmapFont клас
    • полезност метод Добавено "getCharIDs" да BitmapFont клас
    • Публикувана "текстура" имущество да BitmapFont клас
    • Публикувана "textureFormat" имущество да AssetManager клас
    • имот Публикувана "isLoading" да AssetManager клас
    • имот Публикувана "textureRepeat" да AssetManager клас
    • събитие Публикувана "IO_ERROR" да AssetManager клас (при зареждане от URLLoader не успее)
    • "PARSE_ERROR" събитие Добавено да AssetManager клас (благодарение на Thomas Лефевр)
    • събитие Публикувана "SECURITY_ERROR" да AssetManager клас (благодарение на Honza Brecka)
    • Добавена някои "защитени", класирали до AssetManager методи, за по-добра разтегливост
    • "FATAL_ERROR" събитие Добавено към Старлинг клас (благодарение на Андраш Csizmadia)
    • "stopWithFatalError метод" Добавено към Старлинг клас
    • имот Публикувана "backBufferPixelsPerPoint" да Старлинг клас
    • параметър Публикувана "ignoreChildOrder" на "Sprite.flatten ()" (благодарение на vync79)
    • метод полезност Публикувана "cleanMasterString" (благодарение на Jackson Дънстън)
    • Добавено ByteArray-аварийната ако AssetManager не може да анализира, XML или JSON
    • Добавено способността за верига ColorMatrixFilter функции (благодарение на Tim Conkling)
    • Публикувана "стандарт" профил за автоматично избиране на профила
    • имот Публикувана "supportsRelaxedTargetClearRequirement" да SystemUtil клас
    • Публикувана "формат" и доводи "повтарящи се" до RenderTexture конструктор
    • имот Публикувана "soundTransform" да MovieClip клас (благодарение на Kawika Heftel)
    • "setQuad метод" Добавено да QuadBatch клас
    • Добавено MathUtil клас
    • проекти и модулни Добавено файлове за IntelliJ IDEA
    • Добавено помощник скрипт "copy_resources.rb" за IntelliJ IDEA
    • Оптимизиран: персистираща правят текстури вече не се нуждаят от двойно буфериране (благодарение на AIR 15)
    • Оптимизиран всички вътрешни XML разбор (благодарение на JohnHeart & Andrew Pellerano)
    • Оптимизиран BitmapFont състав - сега обединяване на всички временни обекти
    • Оптимизиран за управление на паметта за някои вътрешно използва BitmapData (TextField, MiniBitmapFont)
    • Оптимизиран "TextureAtlas.getNames" от кеширане сортирани списък с имена
    • Оптимизиран "TextureAtlas.getTexture", като винаги се връщат случаите същия SubTexture
    • Оптимизиран "DisplayObject.removeEventListeners" (благодарение на Fraggle)
    • Оптимизиран "AssetManager.loadQueue" чрез преработка на шрифта / атлас XML файловете в отделни стъпки
    • Оптимизиран метод "advanceTime" в MovieClip клас
    • Оптимизиран "изпълни" функция, като се избягва "Array.slice"
    • Оптимизиран боравене с преминаване текстури в FragmentFilter (избягване шанс на препратка нула)
    • Оптимизиран AOT производителност чрез избягване на "Array.push" на няколко места
    • Оптимизиран скеле и Демо проекти, така че те вече не се нуждаят внедрен фоново текстура

    Какво ново във версия 1.6:

    • клас Публикувана "Sprite3D" за прости 3D трансформации
    • Добавено 3D методи за трансформация на DisplayObject, RenderSupport и MatrixUtil класове

    • <> Li Добавено 3D камера свойства към етапа клас ("fieldOfView", "focalLength", "projectionOffset")
    • имот Публикувана "is3D" да DisplayObject клас
    • Добавена натоварване успоредно актив да AssetManager клас (чрез имущество "numConnections")
    • Добавено изгради скриптове за Gradle и Maven (благодарение на Андраш Csizmadia & Honza Brecka)

    • <> Li добавени автоматични тестове за интеграция TravisCI (благодарение на Андраш Csizmadia & Honza Brecka)
    • Добавено "RenderTexture.optimizePersistentBuffers" да се даде възможност за един буферен правят текстури
    • Добавена е поддръжка за вложени филтри (благодарение на AIR 15)
    • Добавена е поддръжка за изготвяне филтрират предмети, за да направи текстури
    • Добавена е поддръжка за HTML текст в клас "TextField" (TrueType шрифтове само)
    • Публикувана "цвят" имущество да Button клас
    • Публикувана "над" и "инвалиди" гласи да Button клас
    • Публикувана "наслагване" имущество да Button клас
    • метод Публикувана "readjustSize" да Button клас
    • полезност метод Добавено "hasChars" да BitmapFont клас
    • полезност метод Добавено "getCharIDs" да BitmapFont клас
    • Публикувана "текстура" имущество да BitmapFont клас
    • Публикувана "textureFormat" имущество да AssetManager клас
    • имот Публикувана "isLoading" да AssetManager клас
    • имот Публикувана "textureRepeat" да AssetManager клас
    • събитие Публикувана "IO_ERROR" да AssetManager клас (при зареждане от URLLoader не успее)
    • "PARSE_ERROR" събитие Добавено да AssetManager клас (благодарение на Thomas Лефевр)
    • събитие Публикувана "SECURITY_ERROR" да AssetManager клас (благодарение на Honza Brecka)
    • Добавена някои "защитени", класирали до AssetManager методи, за по-добра разтегливост
    • "FATAL_ERROR" събитие Добавено към Старлинг клас (благодарение на Андраш Csizmadia)
    • "stopWithFatalError метод" Добавено към Старлинг клас
    • имот Публикувана "backBufferPixelsPerPoint" да Старлинг клас
    • параметър Публикувана "ignoreChildOrder" на "Sprite.flatten ()" (благодарение на vync79)
    • метод полезност Публикувана "cleanMasterString" (благодарение на Jackson Дънстън)
    • Добавено ByteArray-аварийната ако AssetManager не може да анализира, XML или JSON
    • Добавено способността за верига ColorMatrixFilter функции (благодарение на Tim Conkling)
    • Публикувана "стандарт" профил за автоматично избиране на профила
    • имот Публикувана "supportsRelaxedTargetClearRequirement" да SystemUtil клас
    • Публикувана "формат" и доводи "повтарящи се" до RenderTexture конструктор
    • имот Публикувана "soundTransform" да MovieClip клас (благодарение на Kawika Heftel)
    • "setQuad метод" Добавено да QuadBatch клас
    • Добавено MathUtil клас
    • проекти и модулни Добавено файлове за IntelliJ IDEA
    • Добавено помощник скрипт "copy_resources.rb" за IntelliJ IDEA
    • Оптимизиран: персистираща правят текстури вече не се нуждаят от двойно буфериране (благодарение на AIR 15)
    • Оптимизиран всички вътрешни XML разбор (благодарение на JohnHeart & Andrew Pellerano)
    • Оптимизиран BitmapFont състав - сега обединяване на всички временни обекти
    • Оптимизиран за управление на паметта за някои вътрешно използва BitmapData (TextField, MiniBitmapFont)
    • Оптимизиран "TextureAtlas.getNames" от кеширане сортирани списък с имена
    • Оптимизиран "TextureAtlas.getTexture", като винаги се връщат случаите същия SubTexture
    • Оптимизиран "DisplayObject.removeEventListeners" (благодарение на Fraggle)
    • Оптимизиран "AssetManager.loadQueue" чрез преработка на шрифта / атлас XML файловете в отделни стъпки
    • Оптимизиран метод "advanceTime" в MovieClip клас
    • Оптимизиран "изпълни" функция, като се избягва "Array.slice"
    • Оптимизиран боравене с преминаване текстури в FragmentFilter (избягване шанс на препратка нула)
    • Оптимизиран AOT производителност чрез избягване на "Array.push" на няколко места
    • Оптимизиран скеле и Демо проекти, така че те вече не се нуждаят внедрен фоново текстура

    Какво ново във версия 1.5.1:

    • С обменените препратки към "HTTPStatusEvent.HTTP_RESPONSE_STATUS" с поръчкови константа, за да се избегнат проблеми в чисти Флаш проекти.

    Какво ново във версия 1.5:

    • Добавена:
    • Подкрепа за автоматично избиране на Context3D профил
    • Автоматично използване на RectangleTextures, когато е възможно, за да пестите памет
    • Подкрепа за завъртените SubTextures (за инструменти като "TexturePacker")
    • Подкрепа за 'File' копия на "AssetManager.enqueueWithName"
    • Подкрепа за опции при предприемане на текстурата на "AssetManager.enqueueWithName"
    • Поддръжка на множество Старлинг случаи, когато се използва AssetManager
    • Подкрепа за "изпълнение фон" да AssetManager
    • Подкрепа за последна ATF файлов формат
    • Подкрепа за Antialiasing в RenderTextures (идва с AIR 13)
    • Automatic обединяване на забавените повиквания в "Juggler.delayCall"
    • удобство функция "repeatCall" да жонгльор
    • имущество "touchGroup" за контейнери, подобни на "mouseChildren" в класически Flash
    • клас "SystemUtil", за да се опрости, платформа-зависими задачи
    • 'offsetX / Y "свойства на BitmapFont
    • "прозрачни" параметър "Stage.drawToBitmapData"
    • метод "Texture.fromData"
    • Оптимизиран:
    • Начален момент изключително от лениво създаване AGAL програми (благодарение на ajwfrost)
    • Изпълнение на сетер "DisplayObject.rotation" чрез избягване на линия (благодарение на Zeh)
    • Bitmap Font оказване чрез намаляване на обектни разпределения масово (благодарение на Jeff)
    • "Quad.setColor" (благодарение на IonSwitz)
    • сетер "DisplayObject.transformationMatrix"
    • промяна на капацитета на QuadBatch например
    • "removeEventListener"
    • "Texture.frame" кариерист, като се избягва разпределение
    • Fixed:
    • разбор на името на файла и разширение на AssetManager обект
    • Null позоваване на загубена контекст след смяна на шрифт от TrueType да BMP
    • Compiler предупреждение в Flash CC
    • Multiple експедиция на "addedTo'- и" събития removedFromStage "

    • <> Li затваряне RenderTexture разпределения (благодарение на Jonathan Hart)
    • въпроси честоти, когато се обаждате "purgeQueue" и "loadQueue" победа
    • Това advanceTime "се нарече контекст е загубен
    • Нередовно позоваване нищожна рамките TextField клас след загуба контекст
    • Максимален размер на QuadBatch

    Какво ново във версия 1.4.1:.

    • Добавена публична собственост "AssetManager.numQueuedAssets"
    • Добавена защитена собственост "AssetManager.queue".
    • "Starling.registerProgramFromSource" метод Публикувана.
    • Оптимизиран текст оказване на бутони, които да позволят тяхната "batchable" собственост.
    • Оптимизиран фрагмент филтър строителството чрез кеширане шейдърни програми.
    • Оптимизиран сетер "VertexData.numVertices".
    • Фиксирана погрешна "clipRect", когато тя е изцяло извън пределите на сцената.
    • Фиксирана грешка в "AssetManager.loadQueue" кога "purgeQueue" се нарича време на активния timout.
    • Фиксирана анонимна функция за FDT съвместимост на скеле проект.

    Какво ново версия 1.4:

    • имот Публикувана "Sprite.clipRect" за проста правоъгълна маскиране
    • Публикувана "DisplacementMapFilter"
    • Добавена е поддръжка за "HiDPI" (т.е. ретина MacBooks)
    • Добавена е поддръжка за RectangleTextures въведени в AIR 3.8
    • Добавена е поддръжка за актуализиран формат ATF файл
    • "Texture.root.onRestore ()" Добавено за употреба текстура възстановяване на загуба контекст
    • Публикувана "Texture.fromEmbeddedAsset ()"
    • Публикувана "TextField.autoSize" (благодарение на Tim Conkling)
    • "AssetManager.enqueueWithName ()" Добавено за потребителски наименоване на активи
    • Добавена защитена "AssetManager.getName ()" за потребителски правила за именуване в подкласове
    • Добавена защитена "TextField.formatText ()" за subclassing
    • Добавена е поддръжка за родово XML, JSON данни ByteArrays и да AssetManager
    • Публикувана "Stage.drawToBitmapData () метод" за игра скрийншоти
    • имот Публикувана "TextureAtlas.texture"
    • Публикувана "Tween.getEndValue ()"
    • Публикувана "Tween.getProgress ()"
    • Публикувана "Quad.premultipliedAlpha" (за съвместимост)
    • Публикувана "AssetManager.checkPolicyFile"
    • Публикувана "AssetManager.purgeQueue () метод": изпразва опашката и спира всички операции в очакване на натоварване

    Какво ново версия 1.4 RC:

    • Добавена:
    • имущество "Sprite.clipRect" за проста правоъгълна маскиране (благодарение на Tim Conkling)
    • "DisplacementMapFilter"
    • Подкрепа за "HiDPI" (т.е. ретина MacBooks)
    • Подкрепа за RectangleTextures въведени в AIR 3.8
    • Подкрепа за актуализиран формат ATF файл
    • "Texture.root.onRestore ()" за употреба текстура възстановяване на загуба контекст
    • "Texture.fromEmbeddedAsset ()"
    • "TextField.autoSize" (благодарение на Tim Conkling)
    • "AssetManager.enqueueWithName ()" за потребителски наименоване на активи
    • Защитена "AssetManager.getName ()" за правилата за именуване на клиента в подкласове
    • Защитена "TextField.formatText ()" за subclassing (благодарение на Грант Матюс)
    • Подкрепа за родово XML, JSON данни ByteArrays и да AssetManager
    • "Stage.drawToBitmapData () метод" за игра скрийншоти
    • имущество "TextureAtlas.texture"
    • "Tween.getEndValue ()" (благодарение на Josh Tynjala)
    • "Tween.getProgress ()"
    • "Quad.premultipliedAlpha" (за съвместимост)
    • "AssetManager.checkPolicyFile"
    • "TextField.redraw () метод" да принуди незабавно чертеж на съдържание
    • Оптимизиран:
    • скрит обект разпределения на IOS (благодарение на Nisse Bryngfors & Adobe Scout)
    • Работа с текстура отдих в случай на загуба на връзка (изисква много по-малко памет)
    • Предавания на ENTER_FRAME събитие
    • изчисления "DisplayObject.transformationMatrix" (благодарение на Ville Koskela)
    • Използване на QuadBatches използвани по време на представяне (сега ги подрязване)
    • "Button" чрез премахване TextField когато текстът е празен низ
    • "DisplayObjectContainer.setChildIndex ()" (благодарение на Josh Tynjala)
    • Обновен:
    • Велик / URL разбор на AssetManager да бъде по-здрава (благодарение на peerobo)
    • Клавиатура събития: сега те са излъчени да виждате всички обекти
    • "transporter_chief.rb" да се използва "IOS-Deploy", вместо "fruitstrap"
    • Районът филтър въвлича в (сега ограничава до възрази границите + надбавка)
    • регистрация Bitmap шрифта да бъде нечувствителен
    • AssetManager да използва името текстура файл като име за растерна графика шрифт
    • Fixed:
    • Multitouch подкрепа на устройства с двете мишката и сензорен екран
    • Това AssetManager понякога никога не завърши зареждането на опашката

    • <> Li изчисления "MovieClip.totalTime", за да се избегне с плаваща запетая с грешки
    • Някои проблеми със специални случаи в рамките на "MovieClip.advanceTime ()"
    • Layout на едноразряден растерни шрифтове
    • Нежелан context3D-селище в "Starling.dispose ()" (благодарение на Себастиан Marketsmuller)
    • Различни грешки в VertexData (благодарение на hamidhomatash)
    • Липсва pivotX / Y-актуализации в сетер "DisplayObject.transformationMatrix"
    • Native TextField уплътнение стойност

    Какво ново във версия 1.3:

    • Добавена е поддръжка за асинхронно зареждане на ATF текстури
    • имот Публикувана "renderTarget" да RenderSupport клас
    • имот Публикувана "scissorRect" да RenderSupport клас

    • свойства
    • Публикувана "nativeWidth" & "nativeHeight" до Texture класове
    • Публикувана "Juggler.contains" метод (благодарение на Josh Tynjala)
    • Добавена е поддръжка за директно модифициране правоъгълник Старлинг илюминатора (без повторно възлагане)
    • Добавена възможност да се игнорира MIP карти на ATF текстури
    • Публикувана "нулиране" метод за клас "DelayedCall"
    • Добавена е поддръжка за повторения безкрайна "DelayedCall"
    • Публикувана "натиск" и "размер" имоти да се докоснат
    • Добавена незадължителен аргумент "резултат" да "Touch.getTouches"
    • Добавена незадължителен аргумент "резултат" да "TextureAtlas.getTextures / getNames"
    • Добавена е поддръжка за връщане Чар в BitmapFont
    • Публикувана аргументи за mipmaps и мащаба на "fromBitmap метод"
    • Добавена прелоадра в демонстрационни проекти
    • Добавена мащаб параметър, за да "Starling.showStatsAt"
    • Добавена е поддръжка за Event.MOUSE_LEAVE на родна сцена
    • Добавена е поддръжка за Maven изгражда
    • имот Публикувана "contextData" на Старлинг например
    • Публикувана "RenderSupport.assembleAgal"
    • Updated мобилен скеле и демо проекти, сега използват по същия стартов клас за Android & IOS
    • Актуализирани методи в клас "Transitions" да бъдат защитени
    • Updated метод "DisplayObject.hasVisibleArea" да бъде публично
    • Updated MovieClip.fps сетер за по-добра производителност
    • Updated обработка на споделени контекстни ситуации (сега също подкрепа загуба контекст)

    • <> Li Премахнати вградени активи трябва да се избягват зависимостта от "mx.core" библиотека
    • Фиксирана дисплей списък рендиране, когато Старлинг се спира
    • Фиксирана сетер "DisplayObject.transformationMatrix"
    • Фиксирана изопачаване да работи точно като в Flash Pro

    Подобен софтуер

    Q-Ladder
    Q-Ladder

    4 Jun 15

    JS-PingPong
    JS-PingPong

    13 May 15

    PHP RCon
    PHP RCon

    1 Mar 15

    BC2Conn
    BC2Conn

    28 Feb 15

    Коментари към Starling

    Коментари не е намерена
    добавите коментар
    Включете на изображения!
    Търсене по категория