123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215 |
- package comm
- import (
- "time"
- "go.mongodb.org/mongo-driver/bson/primitive"
- )
- type RenderComponent struct {
- Name string `bson:"name,omitempty" json:"name"`
- FabricId *primitive.ObjectID `bson:"fabricId,omitempty" json:"fabricId,omitempty"`
- CardId *primitive.ObjectID `bson:"cardId,omitempty" json:"cardId,omitempty"`
- MatType uint8 `bson:"matType,omitempty" json:"matType"`
- Imagemat *ImageMatConf `bson:"imageMat,omitempty" json:"imageMat,omitempty"`
- Uvtransform *Uvtransform `bson:"transform,omitempty" json:"transform"`
- Color *Vect3 `bson:"color,omitempty" json:"color"`
- GroupId uint64 `bson:"groupId,omitempty" json:"groupId"`
- Visible *bool `bson:"visible,omitempty" json:"visible"`
- Card *MaterialConf `bson:"card,omitempty" json:"card"`
- }
- type RenderShoeComp struct {
- Name string
- Config *RenderComponent
- }
- type RenderModelComp struct {
- Id string `bson:"id,omitempty" json:"id"`
- MeshId *primitive.ObjectID `bson:"meshId,omitempty" json:"meshId,omitempty"`
- MeshUrl string `bson:"meshUrl,omitempty" json:"meshUrl,omitempty"`
- Type string `bson:"type,omitempty" json:"type"`
- TypeId *primitive.ObjectID `bson:"typeId,omitempty" json:"typeId,omitempty"`
- Transform ModelTransform `bson:"transform,omitempty" json:"transform,omitempty"`
- Components []*RenderShoeComp `bson:"components,omitempty" json:"components,omitempty"`
- }
- const (
- TaskRunState_Created = 0
- TaskRunState_Quened = 1
- TaskRunState_WorkRuning = 2
- TaskRunState_ReWorkRuning = 3
- TaskRunState_Succ = 4
- TaskRunState_Fail = 5
- )
- type TaskRunResult struct {
- Images []*OssType
- }
- type ConvMeshRunResult struct {
- Osgjs *OssType
- Thumbnail *OssType
- File *OssType
- }
- type RenderSceneLight struct {
- Type string `bson:"type,omitempty" json:"type"`
- Direction Vect3 `bson:"direction,omitempty" json:"direction"`
- Color Vect3 `bson:"color,omitempty" json:"color"`
- Intensity float64 `bson:"intensity,omitempty" json:"intensity"`
- AngularDiameter float64 `bson:"angularDiameter,omitempty" json:"angularDiameter"`
- }
- type RenderTask struct {
- Id primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
- UserId primitive.ObjectID `bson:"userId,omitempty" json:"userId"`
- DesignId primitive.ObjectID `bson:"designId" json:"designId"`
- WebId int64 `bson:"webId" json:"webId"`
- RunState int32 `bson:"runState" json:"runState"`
- RunPercent int32 `bson:"runPercent" json:"runPercent"`
- RunResult *TaskRunResult `bson:"runResult" json:"runResult"`
- Width int32 `bson:"width" json:"width"`
- Height int32 `bson:"height" json:"height"`
- CreateTime time.Time `bson:"createTime" json:"createTime"`
- Scene *DesignScene `bson:"scene" json:"scene"`
- MeshId string `bson:"meshId" json:"meshId"`
- MeshUrl string `bson:"meshUrl" json:"meshUrl"`
- MeshShadow string `bson:"meshShadow" json:"meshShadow"`
- Cameras []*RenderCamera `bson:"cameras" json:"cameras"`
- Lights []*RenderSceneLight `bson:"lights" json:"lights"`
- ShoeComps []*RenderShoeComp `bson:"shoeComps" json:"shoeComps"`
- ModelComps []*RenderModelComp `bson:"modelComps" json:"modelComps"`
- MaxSamples int32 `bson:"maxSamples" json:"maxSamples"`
- Exposure float32 `bson:"exposure" json:"exposure"`
- Format string `bson:"format" json:"format"` //渲染格式 png jpg
- }
- type TreeRenderTask struct {
- Id primitive.ObjectID `bson:"_id,omitempty" json:"_id"`
- UserId primitive.ObjectID `bson:"userId,omitempty" json:"userId"`
- AssetId primitive.ObjectID `bson:"assetId" json:"assetId"`
- RunState int32 `bson:"runState" json:"runState"`
- RunPercent int32 `bson:"runPercent" json:"runPercent"`
- RunResult *TaskRunResult `bson:"runResult" json:"runResult"`
- Width int32 `bson:"width" json:"width"`
- Height int32 `bson:"height" json:"height"`
- CreateTime time.Time `bson:"createTime" json:"createTime"`
- Package *AssetPackage `bson:"pack" json:"pack"`
- SceneId string `bson:"sceneId" json:"sceneId"`
- Lights []*RenderSceneLight `bson:"lights" json:"lights"`
- Cameras []*RenderCamera `bson:"cameras" json:"cameras"`
- MaxSamples int32 `bson:"maxSamples" json:"maxSamples"`
- Exposure float32 `bson:"exposure" json:"exposure"`
- Format string `bson:"format" json:"format"` //渲染格式 png jpg
- DevicePixelRatio *float32 `bson:"devicePixelRatio" json:"devicePixelRatio"` //渲染格式 png jpg
- }
- type RenderSetting struct {
- MaxSamples int32 `bson:"maxSamples" json:"maxSamples"` //32
- Exposure float32 `bson:"exposure" json:"exposure"` //1.2
- }
- type RenderCamera struct {
- Thumbnail *OssType `bson:"thumbnail" json:"thumbnail,omitempty"` //
- Position *Vec3Obj `bson:"position" json:"position,omitempty"` //
- Fov float32 `bson:"fov" json:"fov"` //45
- Direction *Vec3Obj `bson:"direction" json:"direction,omitempty"`
- Viewport CameraViewPort `bson:"viewport" json:"viewport"`
- AspectRatio *float32 `bson:"aspectRatio" json:"aspectRatio,omitempty"`
- }
- type CameraViewPort struct {
- Width int32 `bson:"width" json:"width"`
- Height int32 `bson:"height" json:"height"`
- }
- type SunLight struct {
- Type string `bson:"type" json:"type"`
- Intensity float32 `bson:"intensity" json:"intensity"`
- Direction Vec3Obj `bson:"direction" json:"direction"`
- AngularDiameter float32 `bson:"angularDiameter" json:"angularDiameter"`
- Color Vect3 `bson:"color" json:"color"`
- }
- type RenderEnv struct {
- Color Vect3 `bson:"color" json:"color"`
- Rotation float32 `bson:"rotation" json:"rotation"`
- Intensity float32 `bson:"intensity" json:"intensity"`
- FilePath string `bson:"filePath" json:"filePath"`
- Visiable bool `bson:"visiable" json:"visiable"`
- }
- type Vec3Obj struct {
- X float64 `bson:"x" json:"x"`
- Y float64 `bson:"y" json:"y"`
- Z float64 `bson:"z" json:"z"`
- }
- type Vec4Obj struct {
- X float64 `bson:"x" json:"x"`
- Y float64 `bson:"y" json:"y"`
- Z float64 `bson:"z" json:"z"`
- W float64 `bson:"w" json:"w"`
- }
- type RenderMatParam struct {
- Name string `bson:"name" json:"name"`
- Type string `bson:"type" json:"type"`
- Value interface{} `bson:"value" json:"value,omitempty"`
- }
- type RenderMat struct {
- Name string `bson:"name" json:"name"`
- Type string `bson:"type" json:"type"`
- UVProjection string `bson:"uvProjection" json:"uvProjection"` //"box", "uv"
- Parameters []*RenderMatParam `bson:"parameters" json:"parameters"`
- }
- type RenderGroup struct {
- Name string `bson:"name" json:"name"`
- Position Vec3Obj `bson:"position" json:"position"`
- Rotation Vec4Obj `bson:"rotation" json:"rotation"`
- Scale Vec3Obj `bson:"scale" json:"scale"`
- Materials []*RenderMat `bson:"materials" json:"materials"`
- FilePath string `bson:"filePath" json:"filePath"`
- }
- type RenderConf struct {
- Setting *RenderSetting `bson:"setting" json:"setting"`
- Camera *RenderCamera `bson:"camera" json:"camera"`
- Lights []*RenderSceneLight `bson:"lights" json:"lights"`
- Enviroment *RenderEnv `bson:"enviroment" json:"enviroment"`
- Groups []*RenderGroup `bson:"groups" json:"groups"`
- Shadow *Shadow `bson:"shadow" json:"shadow"`
- }
- type WorkerRequest struct {
- Name string `json:"name"`
- UserId string `json:"userId"`
- SessionId int64 `json:"sessionId"`
- TaskId string `json:"taskId"`
- MainId string `json:"mainId"`
- TaskCollection string `json:"taskCollection"`
- WorkerType string `json:"workerType"`
- CreateTime time.Time `json:"createTime"`
- }
- type WorkerResponse struct {
- ErrorNo int `json:"errorNo"`
- ErrorDesc string `json:"errorDesc"`
- Result struct {
- WorkingId string `json:"workingId"`
- } `json:"result"`
- }
- type Shadow struct {
- Size *Vect2 `bson:"size,omitempty" json:"size,omitempty"`
- Position *Vect3 `bson:"position,omitempty" json:"position,omitempty"`
- File string `bson:"file,omitempty" json:"file,omitempty"`
- }
|